С сохранением в словарь сервиса (сохранение отключается при необходимости).
Для работы необходимо:
- Аккаунт на Lingualeo
- PotPlayer (необходимые настройки - ниже)
- Node.js и скрипт из данного репозитория
- Устанавливаем PotPlayer. У него есть удобная функция - поиск слов из субтитров по клику на них (по умолчанию работает тогда, когда видео стоит на паузе). Так как скрипт перехватывает слова из буфера обмена, в плеере необходимо включить копирование слов в буфер вместо поиска в Google. Для этого открываем любое видео с субтитрами, останавливаем его, кликаем на любое слово правой кнопкой - "Параметры". Выделяем строчку "Копировать в буфер обмена" и с помощью кнопки "Выше" перетаскиваем на первое место. Жмем ОК.
- Если не установлено - ставим node.js
- Устанавливаем и настраиваем скрипт. Копируем содержимое данного репозитория в отдельную папку. Находясь в этой папке, в консоли выполняем
npm i
илиyarn install
(если установлен Yarn). В файл auth-config.js вписываем логин и пароль для Lingualeo. - Опционально для пользователей Windows < 8. Ставим Growl - программу для демонстрации всплывающих уведомлений в стиле MacOS.
- Открываем PotPlayer с нужным видео
- Запускаем скрипт: находясь в его папке выполняем
node index.js
(перевод будет отображаться во всплывающем окне + слова, которых нет в словаре сервиса, будто автоматически туда добавлены) илиnode index.js --nodict
(только показ переводов, без добавления в словарь). ВАЖНО: скрипт перехватывает любое текстовое содержимое буфера, в котором нет пробелов, так что запускать его стоит только для перевода субтитров. И не отвлекаться от просмотра - это и для изучения языка полезно :) - Можно кликать на непонятные слова и смотреть перевод. Enjoy!
Выполнение скрипта завершается стандартной комбинацией Ctrl + C
. После завершения работы рекомендуется зайти в Словарь Lingualeo и откорректировать значения слов, т.к. для уменьшения количества действий пользователя скрипт автоматически выбирает первое (самое популярное) значения слова из списка.
Скрипт написан для личного использования и может содержать ошибки (как и любой другой), из-за специфики применения некоторыми проверками в коде было решено пренебречь. Доработки и модификации всячески приветствуются.