3.9 KiB
3.9 KiB
Сырой текст задания → Плоская карточка
Описание
Данный проект реализует конвертацию «сырого» текста задания в формат плоской карточки (flat card). Карточка представляет собой упрощённую, визуально чистую версию исходного документа, пригодную для быстрого просмотра и дальнейшего использования в системах управления задачами или в качестве шаблона для презентаций.
Структура проекта
project/
├── src/
│ ├── main.py # Точка входа – скрипт конвертации
│ ├── utils.py # Вспомогательные функции (парсинг, форматирование)
│ └── templates/ # Шаблоны карточек в формате Markdown / HTML
├── tests/
│ └── test_main.py # Юнит‑тесты
├── requirements.txt # Зависимости проекта
└── README.md # Это файл
Установка зависимостей
# Создайте виртуальное окружение (рекомендуется)
python -m venv .venv
source .venv/bin/activate # Windows: .\.venv\Scripts\activate
# Установите зависимости из requirements.txt
pip install -r requirements.txt
requirements.txt содержит только необходимые библиотеки, например:
Jinja2>=3.0 # для шаблонизации карточек
Markdown>=3.4 # при необходимости конвертации Markdown в HTML
Запуск
Конвертация одного файла
python src/main.py path/to/raw_task.txt --output path/to/card.md
path/to/raw_task.txt– путь к исходному файлу с «сырым» текстом задания.--output(необязательно) – куда сохранить результат. Если не указано, вывод будет в stdout.
Конвертация всех файлов из каталога
python src/main.py path/to/raw_tasks/ --recursive --output-dir path/to/cards/
--recursiveобрабатывает все.txtфайлы внутри указанного каталога и его подпапок.--output-dir– каталог, куда будут сохранены карточки.
Пример использования
# Предположим, у нас есть файл task1.txt со следующим содержанием:
#
# # Задача 1
# Описание: Написать скрипт, который конвертирует сырой текст в плоскую карточку.
# Требования:
# - Использовать Python 3.8+
# - Сохранять результат в Markdown
python src/main.py task1.txt --output card_task1.md
После выполнения будет создан файл card_task1.md со следующим содержимым:
# Задача 1
**Описание:**
Написать скрипт, который конвертирует сырой текст в плоскую карточку.
## Требования
- Использовать Python 3.8+
- Сохранять результат в Markdown
Тесты
pytest tests/
Все тесты находятся в каталоге tests/ и проверяют корректность парсинга, форматирования и генерации карточек.
Лицензия
MIT License – см. файл LICENSE.