ââââââââââââââââââââ ââââââââââ ââââââââ
ââââââââââââââââââââ âââââââââââââââââââ
âââââââ âââ âââââââââ âââ âââ ââââââ âââââââââ
ââââââââââââ ââââââââââ âââ âââ ââââââ âââââââââ
ââââââââ âââââââ ââââââââ âââ âââââââââââââââââââââââââ
âââââââ âââââ ââââââââ âââ âââââââ âââââââ ââââââââ
âââ âââ MIT © Laurent Bourgon 2020
âââ âââ
Ce document est relatif Ă la version v2.4.0
- ProblÚme encontré
- Solution
- Ce qu'il faut et les limites du projet
- Avenir
- Bien DĂ©marrer
- Utilisation
- Captures d'Ă©cran
- Foire Aux Questions
- Créé avec
- Contributeurs
- Licence
La création d'un document de révision est un outil majeur à l'apprentissage de nouveaux concepts, que ce soit au profil académique ou pour un loisir. Dans un monde idéal, nous n'aurions qu'à taper les informations et cela nous aiderait à les mémoriser. Cependant, les outils de traitement de texte ne permettent pas une telle facilité. Afin d'avoir un document potable pour l'étudier, il faut un modÚle précis qui permet l'organisation de sujets peu importe leur champ. La création d'un tel document prend beaucoup de temps et, malheureusement, Microsoft Word
ne permet aucun moyen efficace pour réutiliser ce modÚle (les fichiers modÚles .dotx
ont beaucoup de problĂšmes). Ce problĂšme rĂ©duit le temps qui peut ĂȘtre utilisĂ© au remplissage du document.
Pour régler ce problÚme, j'ai commencé un projet qui permet de remplir un document modÚle en quelques secondes et ce, sans problÚme de formattage.
Afin de remplir ce document facilement, le programme va faire ceci:
- Extraire le fichier modĂšle dans un dossier temporaire
- Remplacer les informations par ce qui a été demandé au niveau du GUI
- Le programme remplacera des valeurs dans les fichiers
.xml
du documentWord
.
- Le programme remplacera des valeurs dans les fichiers
- Zipper et compresser le dossier temporaire de maniÚre à ce que les normes et spécifications de
Microsoft Word
soient respectées (indispensable au bon fonctionnement du document dans l'avenir) - Détruire le dossier temporaire
- Renommer l'extension du fichier créé pour qu'il soit reconnu par
Microsoft Word
- Ce problÚme nécessite (pour l'instant)
Python3
. Ă cause de l'ajout d'un GUI,pyĂtude
ne fonctionne que sous Windows, macOS et Linux (pour l'instant). Pour les autres périphériques, veuillez utiliser la version (obsolÚte) qui est en ligne de commande (pyETUDE_cli.py
) - Ce projet utilise un document
Word
manuellement configuré et le modifie à l'intérieur. Pour avoir un modÚle différent, il faut modifier ce document avec les bonnes balises. - Ce projet n'utilise pas le module
python-docx
puisqu'il était trop compliqué d'avoir un résultat correct et sans problÚme. De plus, cela enlÚve un élément à télécharger.
- Transformer ce programme en GUI pour une utilisation plus facile et rapide
- Fonctionner sous
Word on iOS/iPadOS
etLibreOffice
(logiciels qui ne prennent pas en charge les métadonnées) - Mettre en place des chemins de sortie personnalisés selon la matiÚre sélectionnée
- Télécharger le modÚle à distance afin de ne faire qu'un seul fichier à télécharger manuellement
- Mode sombre (pour le bien des yeux!)
- MatiÚres Intelligentes qui savent quel document créé selon ceux qui ont déjà été créés
- Transformer ce programme en interface web pour faciliter la tĂąche (depuis la version
2.4.0
, il existe une version enJupyter Notebook
) - Avoir un configurateur de modÚles afin de créer un modÚle personnalisé
- Avoir plusieurs modĂšles qui peuvent ĂȘtre choisis.
- Avoir plusieurs types de documents (page de présentation, devoirs, etc)
- Utiliser Qt for Python au lieu de PyQt5
- Ajout dans PyPI afin de pouvoir le télécharger avec une simple commande (ex.
pip install pyEtude
) - Transformer ce programme en version web OU en application mobile pour faciliter l'utilisation sur tablette et Ă distance
Catégorie | Valeur | Notes additionnelles | Installation |
---|---|---|---|
OS: | N'importe lequel | ||
Python: | Python 3 |
Développé sous Python 3.8.2, veuillez mettre à jour votre version si vous avez des problÚmes | Télécharger Python3 |
Extensions Python: | json |
Fait parti des paquets par défaut, pas besoin de l'installer | |
locale |
Fait parti des paquets par défaut, pas besoin de l'installer | ||
os |
Fait parti des paquets par défaut, pas besoin de l'installer | ||
urllib |
Fait parti des paquets par défaut, pas besoin de l'installer | ||
sys |
Fait parti des paquets par défaut, pas besoin de l'installer | ||
zipfile |
Fait parti des paquets par défaut, pas besoin de l'installer | ||
PySide2 |
NE FAIT PAS PARTI DES PAQUETS PAR DĂFAUT, Ă INSTALLER | TĂ©lĂ©charger avec PyPi python3 -m pip install PySide2 |
- Pour utiliser la version
Jupyter Notebook
(web), vous aurez besoin denotebook
et deipywidgets
(pip install notebook ipywidgets
)
- Assurez-vous que vous respectez la Configuration requise.
- Télécharger la version la plus récente de
pyEtude-vX.X.X.pyw
dans les releases. - (optionnel, mais recommandé) Déplacer
pyEtude-vX.X.X.pyw
dans un dossier vide. - Exécuter le programme avec le terminal/invite de commande ou en double-cliquant dessus, selon votre systÚme d'exploitation.
Avec le terminal:
cd Users/Laurent/Documents/GitHub/pyEtude
python3 pyEtude.pyw
Exécuter le programme avec le terminal/invite de commande ou en double-cliquant dessus, selon votre systÚme d'exploitation.
cd Users/Laurent/Documents/GitHub/pyEtude
python3 pyEtude.pyw
- Si c'est la premiĂšre fois que vous lancez le programme vous devrez passer par le configurateur
- Configurateur (premier lancement):
- Générateur:
RĂ©glage | Valeur |
---|---|
Titre | Chapitre 5 |
Sous-Titre | Les Lois de Newton |
MatiĂšre | PHY |
Numéro | 1607 |
Premier titre | La PremiĂšre Loi |
Auteur | Laurent Bourgon |
Niveau | Secondaire 5 - 2019-2020 |
Nom du fichier | PHY-1607.docx |
RĂ©glage | Valeur |
---|---|
Titre | Chapitre 1 |
Sous-Titre | La Structure de la MatiĂšre |
MatiĂšre | STE |
Numéro | CHP1 |
Premier titre | La nature de la structure de la matiĂšre |
Auteur | Laurent Bourgon |
Niveau | Secondaire 4 - 2018-2019 |
Nom du fichier | STE-CHP1.docx |
-
OSError: [WinError 123] La syntaxe du nom de fichier, de répertoire ou de volume est incorrecte
: Le nom de matiĂšre et le numĂ©ro/chapitre ne peuvent pas contenir de caractĂšres spĂ©ciaux, cela empĂȘche la crĂ©ation du dossier temporaire et du fichier final. Si vous devez absolument en avoir un, veuillez mettre une valeur sans caractĂšres spĂ©ciaux et modifiez-le manuellement. -
Mes caractĂšres
&
(esperluette) sont tous enlevés et n'apparaissent pas dans mon document: Word a de la difficulté avec l'esperluette. Si vous voulez que j'ajoute un mode de compatibilité pour l'esperluette, veuillez faire un ticket de demande de fonctionnalité.  -
Word a rencontré une erreur lors de l'ouverture du fichier
: Cela est surement dû aux valeurs qui contiennent des caractÚres spéciaux. Si ce n'est pas le cas, veuillez faire un ticket d'aide. -
Le modĂšle que j'ai choisi est corrompu!: Veuillez supprimer le modĂšle (le fichier
.docx
) et relancerpyĂtude
, celui-ci le téléchargera automatiquement. Si le problÚme persiste, veuillez faire un ticket d'aide. -
Mon nouveau document fait
24Ko
, le modĂšle fait28Ko
, pourquoi?: Ceci est dĂ» Ă un problĂšme dans la compression du fichier, Word utilise une compression propre Ă lui et c'est pour cela que le document montera de4Ko
dĂšs la premiĂšre sauvegarde. -
Mes matiÚres ne sont pas ordonnées correctement dans le menu du Générateur! Ceci est dû au fait que l'ordinateur pense que
Ă©
,Ă
, ... sont des lettres complÚtement différentes dee
eta
: pour résoudre cela, j'utilise un dictionnaire créé par le systÚme d'exploitation au lancement du logiciel. Cependant, quelques systÚmes d'exploitation n'ont pas cette fonctionnalité (exmacOS
). Si vous souhaitez vraiment cette fonctionnalité, veuillez faire un ticket de demande de fonctionnalité. -
J'ai l'erreur suivante:
Ceci est dĂ» au fait que PySide2
(Qt for Python) n'a pas Ă©tĂ© trouvĂ© (Voir la Configuration requise). Assurez-vous de l'avoir installĂ© avec la mĂȘme version de Python3
que vous utilisez. Les modules sont indépendants et sont propres à chaque version.
- Comment puis-je utiliser mon propre modĂšle? Voir la documentation
- Comment puis-je personaliser mes matiĂšres? Voir la documentation
- Comment puis-je modifier le chemin par dĂ©faut selon la matiĂšre choisie? Voir la documenation Â
- Mon problĂšme n'est pas ici!: Veuillez faire un ticket d'aide.
- Serait-ce possible d'ajouter
X
?: Veuillez faire un ticket de demande de fonctionnalitĂ© - Puis-je ajouter moi-mĂȘme les fonctionnalitĂ©s/rĂ©solution de problĂšmes?:
Veuillez faire un
fork
de ce projet, faire les modifications et faire une demande de fusion
- Visual Studio Code pour écrire, modifier et effectuer le déboggage du programme
- λ cmder Console Emulator pour le développement et pour l'invite de commande
- Qt Designer pour créer le gabarit de l'application
- Python 3 pour compiler et lancer ce programme
- Qt for Python pour tout le GUI et la transformation du
.ui
en.py
- Microsoft Word 365 pour créer le modÚle utilisé
- GitHub pour organiser, publier et sauvegarder ce projet
- @BourgonLaurent - Idée & Conception du programme
Ce projet est sous licence MIT.
Cet extrait provient de LICENSE:
MIT License
Copyright © 2020 Laurent Bourgon
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.