You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: README.md
+76-71
Original file line number
Diff line number
Diff line change
@@ -1,61 +1,97 @@
1
1
# Modèle HEIG-VD pour Rapport de Bachelor <!-- omit in toc -->
2
2
3
-
Ce référentiel contient le modèle de document LaTeX pour la production d'un rapport de bachelor [HEIG-VD](http://heig-vd.ch). Il peut être adapté au besoin.
3
+
Ce référentiel contient une proposition de modèle de document $\LaTeX{}$ pour la production d'un rapport de travail de bachelor [HEIG-VD](http://heig-vd.ch). Il peut être adapté au besoin.
Cet environnement de repose pas sur [Overleaf](https://www.overleaf.com/) parce que la plateforme en ligne ne permet pas la gestion des dépendances et des artefacts et qu'elle est devenue payante avec le temps.
33
+
- Utilisez [Visual Studio Code](https://code.visualstudio.com/) avec l'extension [Remote - Containers](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers) pour éditer votre rapport.
34
+
- Clonez le référentiel et ouvrez le dossier dans VS Code.
35
+
- Compilez votre rapport avec `make`.
36
+
- Vous devez avoir [Docker](https://www.docker.com/) installé sur votre machine.
37
+
- Ce projet compile à la volée les diagrammes Draw.io, les figures SVG et les graphiques Python.
34
38
35
-
Avec une solution en ligne comme Overleaf, les figures générées à partir de scripts (Python), les illustrations faites avec [Draw.io](https://app.diagrams.net/) et la conversion automatique de figures (`svg` en `pdf`), ne peuvent pas être automatisées. En revanche, en profitant d'un environnement de développement local, avec l'appui de Docker, ces tâches peuvent être automatisées et la compilation rendue plus rapide.
39
+
## Overleaf ?
36
40
37
-
Ce modèle de document se veut simple d'accès pour les étudiantes et les étudiants de la HEIG-VD. Il peut être adapté et est libre d'utilisation.
41
+
Pourquoi ne pas offrir un modèle [Overleaf](https://www.overleaf.com/) ? D'une part parce que Overleaf n'est pas nécessairement gratuit et qu'il n'offre pas la possibilité de compiler des scripts Python ou des diagrammes Draw.io.
42
+
43
+
Éditer le rapport hors ligne semble plus adapté pour des raisons de confort d'utilisation, de confidentialité et de sécurité.
44
+
45
+
Avec le temps le support de Git/GitHub, et l'historique des changements ne sont plus disponibles dans la version gratuite d'Overleaf. Il est donc préférable de travailler en local et de pousser les modifications sur GitHub.
38
46
39
47
## Comment démarrer / Quick Start
40
48
49
+
### Prérequis
50
+
41
51
Pour utiliser ce canevas, vous avez besoin des logiciels suivants:
42
52
43
53
-[Microsoft Visual Studio Code](https://code.visualstudio.com/)
44
54
-[Docker](https://www.docker.com/)
55
+
-[Git](https://git-scm.com/)
45
56
46
57
Une fois ces logiciels installés et démarrés, vous devez configurer une extension pour VS Code. Elle vous permettra de faire le lien avec Docker.
Ensuite, vous pouvez cloner le référentiel sur votre machine en utilisant `git clone` ou GitHub Desktop, puis ouvrir le dossier dans VS Code.
64
+
65
+
Alternativement, et préférablement, vous pouvez faire un *fork* du référentiel sur GitHub, puis cloner votre copie sur votre machine. Ce faisant, vous pourrez pousser vos modifications sur votre propre copie du référentiel et surveiller les mises à jour du modèle original.
66
+
67
+
### Ouverture dans Visual Studio Code
68
+
69
+
Une fois le projet ouvert dans Visual Studio Code, l'extension *Remote - Containers* vous proposera de construire l'image Docker nécessaire à la compilation du document. Cette construction peut prendre du temps (2 à 15 minutes) selon votre connexion et votre machine.
70
+
71
+
Après cela la compilation est possible avec la commande `make` ou Ctrl+Alt+B.
72
+
73
+
### Configuration du titre et de la signature
74
+
75
+
Éditez le fichier `meta.tex` pour y inscrire le titre de votre rapport, votre nom et prénom et le nom de votre superviseur.
76
+
77
+
Remplacez ensuite la signature `assets/figures/signature.svg` par la vôtre. Il est préférable de garder une variante vectorielle, mais un fichier PNG peut également être utilisé.
78
+
79
+
### Nettoyage du modèle
51
80
52
-
L'environnement d'édition conseillé est l'éditeur [Microsoft Visual Studio Code](https://code.visualstudio.com/) couplé à [Docker](https://www.docker.com/) et au [Dev Containers](https://code.visualstudio.com/docs/remote/containers). Ceci vous évite d'installer une distribution LaTeX. Alternativement, il est possible de travailler dans [WSL](https://docs.microsoft.com/en-us/windows/wsl/install-win10).
81
+
Ce modèle est fourni avec des textes d'information. Supprimez simplement les fichiers superflus dans les répertoires suivants :
53
82
54
-
La distribution LaTeX conseillée est [TeX Live](https://www.tug.org/texlive/). L'alternative MiKTeX est déconseillée bien que très populaire.
83
+
-`assets/frontmatter`
84
+
-`assets/content`
85
+
-`assets/backmatter`
86
+
-`assets/appendix`
55
87
56
-
## VsCode + Docker + LaTeX Suite
88
+
Vous pouvez éventuellement garder la structure de `assets/content` et supprimer les textes d'information.
57
89
58
-
Certainement l'une des plus élégantes manières de développer avec LaTeX est d'utiliser Visual Studio Code avec un conteneur POSIX contenant une distribution TeXLive.
90
+
## Environnement de travail
91
+
92
+
### VsCode + Docker + LaTeX Suite
93
+
94
+
Certainement l'une des plus élégantes manières de développer avec $\LaTeX{}$ est d'utiliser Visual Studio Code avec un conteneur POSIX contenant une distribution TeXLive.
59
95
60
96
L'éditeur couplé à LaTeX Workshop de James Yu permet une édition fluide. Le menu `commands` offre l'accès à tous les outils de base. La structure (en bas à gauche) et accessible par Ctrl+Alt+X permet de naviguer facilement dans le code. Le panneau des symboles (à droite) permet l'insertion facile de caractères mathématiques.
61
97
@@ -77,45 +113,15 @@ Vous pouvez utiliser les commandes suivantes suivi de tab:
77
113
78
114
D'autres commandes existent et sont accessibles [ici](https://cheatography.com/jcwinkler/cheat-sheets/latex-workshop-visual-studio-code/).
79
115
80
-
L'éditeur de PDF [Sumatra](https://www.sumatrapdfreader.org/) est conseillé pour visualiser votre rapport, contrairement à Adobe Acrobat, le contenu est automatiquement rafraichi une fois le rapport recompilé.
81
-
82
-
### Fork et Clone du référentiel
83
-
84
-
Pour bien démarrer, commencez par faire un *fork* du référentiel en cliquant sur le bouton **Fork** depuis l'interface GitHub. Ceci vous crée une copie du modèle dans votre propre organisation GitHub. Clonez ensuite le référentiel avec `git clone`.
85
-
86
-
### Démarrer vscode
87
-
88
-
Si vous n'avez pas installé VS code et Docker, vous devez les installer au préalable.
116
+
L'éditeur de PDF [Sumatra](https://www.sumatrapdfreader.org/) est conseillé pour visualiser votre rapport, contrairement à Adobe Acrobat, le contenu est automatiquement rafraichi une fois le rapport recompilé. Il est plus agréable à utiliser que la prévisualisation intégrée à VS Code, ou la visionneuse de PDF dans le navigateur.
89
117
90
-
Démarrez vscode et installez l'extension *Visual Studio Code Remote - Containers*.
118
+
### Compilation
91
119
92
-
Ouvrez le dossier (`CTRL+K+O`), l'environnement de développement sera automatiquement démarré.
120
+
Ce modèle de document est prévu pour fonctionner avec LuaLaTeX pour la production d'un fichier `.pdf`. L'outil `latexmk` est utilisé pour séquencer la production du document final. Un `Makefile` s'occupe du prétraitement des figures.
93
121
94
-
**NOTE:** La construction initiale du conteneur prend beaucoup de temps, car la distribution LaTeX doit être téléchargée. Vous pouvez aller boire un café.
122
+
LuaLaTeX permet de directement lire les documents encodés en UTF-8 et supporte par conséquent l'Unicode et les polices de caractères TrueType et OpenType nativement.
95
123
96
-
### Compiler
97
-
98
-
Pour compiler le rapport, exécutez simplement la commande `make`. Normalement, votre rapport est automatiquement compilé à chaque sauvegarde de vos modifications.
99
-
100
-
### Nettoyer la base de code
101
-
102
-
Pour retirer tous les éléments informatifs du modèle exécutez `make fresh`. La commande va éditer `report.tex` pour y retirer les textes d'information marqués par `%%if..%%fi`. La commande magique est :
Pour gérer le suivi de version de votre rédaction, vous pouvez utiliser Git intégré à VisualSudio Code. L'hébergement sur GitHub couplé à l'intégration continue permet la compilation automatique de votre rapport à chaque `git push`. Vous recevrez un e-mail en cas de problème de compilation. Le PDF sera quant à lui disponible depuis le panneau des artefacts de GitHub Actions.
111
-
112
-
## Compilation
113
-
114
-
Ce modèle de document est prévu pour fonctionner avec XeTeX pour la production d'un fichier `.pdf`. L'outil `latexmk` est utilisé pour séquencer la production du document final. Un `Makefile` s'occupe du prétraitement des figures.
115
-
116
-
XeTeX permet de directement lire les documents encodés en UTF-8 et supporte par conséquent l'Unicode et les polices de caractères TrueType et OpenType nativement.
117
-
118
-
## Prétraitement des figures
124
+
### Prétraitement des figures
119
125
120
126
Les figures sont placées dans `assets/figures`.
121
127
@@ -135,11 +141,11 @@ Les conventions de nommage des fichiers intermédiaires sont les suivantes :
135
141
| Diagramme draw.io |`.drawio`|`.drawio.pdf`|
136
142
| Figure Python |`.py`|`.py.pdf`|
137
143
138
-
## Bibliographie
144
+
###Bibliographie
139
145
140
146
Les entrées de bibliographie sont directement éditées dans `bibliography.bib`.
141
147
142
-
## Glossaire
148
+
###Glossaire
143
149
144
150
Le glossaire se trouve dans `glossary.tex`
145
151
@@ -189,14 +195,6 @@ Les conventions consensuelles d'usage sont les suivantes :
189
195
190
196
- Les tables et les figures sont numérotées selon la convention `chapitre.id` où chapitre est le numéro courant du chapitre et `id` un compteur redémarré à `1` à chaque nouveau chapitre.
191
197
192
-
### Outils utiles
193
-
194
-
- Éditeur d'équation en ligne [latex3technics](https://www.latex4technics.com/)
195
-
- Éditeur de diagrammes en ligne [draw.io](https://app.diagrams.net/)
196
-
- Éditeur de tables pour LaTeX [tablegenerator](https://www.tablesgenerator.com/)
197
-
- Éditeur LaTeX en ligne [overleaf](https://www.overleaf.com/)
Une release du rapport peut être générée en ajoutant en tag git après un commit.
@@ -229,7 +235,6 @@ git push origin --tags
229
235
```
230
236
Pour que github action puisse générer la release il faut donner les droits à github action de créer des releases. Dans les paramètres du repo sous Actions/General/Workflows Permissions, cocher "Read and write permission" puis save.
231
237
232
-
233
238
## Technologies utilisées
234
239
235
240
-[LuaLateX](https://www.luatex.org/) permet le support natif de l'Unicode dans la production de fichiers PDF.
0 commit comments