diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..6c65a75 --- /dev/null +++ b/.gitignore @@ -0,0 +1,10 @@ +OLD/ +__pycache__/ +*.py[cod] +.venv/ +build/ +dist/ +*.egg-info/ +config.py +.copienator-gui.json +.copienator/ \ No newline at end of file diff --git a/Readme.org b/Readme.org index e8ec96d..ac62736 100644 --- a/Readme.org +++ b/Readme.org @@ -33,26 +33,77 @@ question précédente ou autre. Les labels de questions sont utilisés comme noms de fichiers. Les labels contenant notamment =:= ne sont pas acceptés par Windows. -** Requirements +** Prérequis et installation -*** Python +*** Python 3.11 ou plus récent -Libraries : +Créer et activer un environnement virtuel est recommandé : #+BEGIN_SRC bash -pip install numpy pandas matplotlib pillow pydantic pypdf pdf2image reportlab img2pdf pymupdf ftfy ezodf google -pip install -e . +python -m venv .venv #+END_SRC -La seconde commande installe les exécutables =copienator= et -=copienator-gui=. Sans installation, les mêmes commandes restent -accessibles avec =python -m copienator=. +Sous Linux : -*** Poppler (for pdf2image) +#+BEGIN_SRC bash +source .venv/bin/activate +#+END_SRC - + Linux : install poppler-utils - + Windows : Download from: https://github.com/oschwartz10612/poppler-windows - and add it to your PATH +Sous Windows (PowerShell) : + +#+BEGIN_SRC powershell +.venv\Scripts\Activate.ps1 +#+END_SRC + +Installer ensuite Copienator et ses dépendances Python depuis la +racine du dépôt : + +#+BEGIN_SRC bash +python -m pip install --upgrade pip +python -m pip install -e . +#+END_SRC + +Cette commande installe les modules contrôlés par le diagnostic du GUI +(NumPy, pandas, Matplotlib, Pillow, pydantic, pypdf, pdf2image, +ReportLab, img2pdf, PyMuPDF, ftfy, ezodf et Google Gen AI), ainsi que +les exécutables =copienator= et =copienator-gui=. Le paquet fournissant +=google.genai= est =google-genai=, et non =google=. + +Les commandes restent également accessibles avec +=python -m copienator= depuis la racine du dépôt. + +*** Programmes externes obligatoires + +Le diagnostic vérifie que Poppler et LaTeX sont accessibles depuis +=PATH=. + +**** Linux (Debian et Ubuntu) + +#+BEGIN_SRC bash +sudo apt install poppler-utils python3-tk texlive-latex-extra texlive-fonts-extra lmodern python3-pygments +#+END_SRC + +Cette sélection couvre les modèles LaTeX de la configuration par +défaut, notamment =standalone=, =lmodern=, =mathabx= et =minted=. Selon +les commandes LaTeX utilisées dans vos propres énoncés, d'autres +paquets TeX peuvent être nécessaires. =python3-tk= fournit Tkinter sur +les installations Python qui ne l'incluent pas d'origine. + +**** Windows + + 1. Télécharger [[https://github.com/oschwartz10612/poppler-windows][Poppler pour Windows]] et ajouter son dossier =bin= à + =PATH=. + 2. Installer une distribution LaTeX, par exemple MiKTeX ou TeX Live, + et vérifier que =pdflatex= est accessible depuis =PATH=. + +Fermer puis rouvrir le terminal et le GUI après une modification de +=PATH=. + +*** Programme externe facultatif + +PDF Arranger permet d'ouvrir et de réorganiser plus facilement les +PDF. Son absence est signalée comme facultative dans le diagnostic. Il +doit fournir la commande =pdf-arranger= ou =pdfarranger= dans =PATH=. *** Accès à Gemini diff --git a/pyproject.toml b/pyproject.toml index a910049..b7d26f2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -7,6 +7,21 @@ name = "copienator" version = "0.1.0" description = "Workflow assistant for preparing and correcting scanned exams" requires-python = ">=3.11" +dependencies = [ + "numpy", + "pandas", + "matplotlib", + "Pillow", + "pydantic", + "pypdf", + "pdf2image", + "reportlab", + "img2pdf", + "PyMuPDF", + "ftfy", + "ezodf", + "google-genai", +] [project.scripts] copienator = "copienator.dispatcher:main"