-
main.py
- точка входа в программу- Получение аргументов командной строки
- Валидация файлов и их обработка
-
tui.py
- функции для работы с красивым выводом в терминале -
args.py
- чтение и проверка аргументов командной строки- Получает все аргументы командной строки
- Выставляет значения по умолчанию для
--destination-language
и--source-language
, если не указаны - Проверяет входные файлы на корректность
-
arg_values.py
- хранение аргументов командной строки- Единственный класс для хранения аргументов
- Единственный экземпляр вышеописанного класса
-
files.py
- Чтение и запись файлов- Главная функция модуля -
manipulate_input_files()
, в ней содержатся все вызовы функций модуля перевода -translate.py
- Главная функция модуля -
-
parse_yaml.py
- работа сYAML
и вложенными словарями- Также в данном модуле находится функция для получения максимально вложенных ключей из
YAML-файла
с помощью библиотекиyaml_keygen_utf_8
- И другие функции для работы со вложенными системами, состоящих из пар
ключ:значение
- Также в данном модуле находится функция для получения максимально вложенных ключей из
-
translate.py
- перевод значений, выбор пользователем сервиса переводаtranslate_value()
- функция для перевода единственного значения с помощью одного сервиса перевода; хорошо работает в связке с цикламиfor
interactive_choices()
- функция для получения значений из:prompt_for_trans_services()
,prompt_for_yaml_tags()
,prompt_for_translation_variants()
- Функции
prompt_for_*
предназначены для запроса у пользователя определенного значения, связанного с выбором конечного перевода
-
yaml_keygen_utf_8
- Модуль для получения ключей с максимальной вложенностью из
YAML-файла
, т. е. ключи, которым соответствует единственное значение, и оно не является ключом - Оригинальный модуль с единственным изменением: теперь он читает только
UTF-8
- Ссылка на оригинальный модуль -
yaml_keygen
- Модуль для получения ключей с максимальной вложенностью из
-
translators_fix
- Модуль перевода текста или
html
в 36 различных сервисах - Перевод в
Yandex.Translate
не работал, поэтому было принято решение сделать копию модуля и вернуть эту возможность (на данный момент поправить перевод пока не удалось) - Ссылка на оригинальный модуль -
translators
- Модуль перевода текста или