Aujourd’hui, nous allons commencer la partie un peu plus pratique. Nous allons procéder à l’Installation TaskJuggler puis nous allons aborder les principales options d’un projet. Cependant, nous n’obtiendrons rien d’exploitable à la fin de cette première partie.
Table des matières
Installation TaskJuggler
Le logiciel est présent dans les dépôts officiels d’Ubuntu. Son installation est donc que rapide et se fait directement avec le logiciel Discover ou la ligne de commande APT. Le logiciel se compose de plusieurs programmes. Ici, nous aborderons uniquement le programme principal tj3.
admin-libre@admin-libre:~$ sudo apt install tj3

Fonctionnement de base
Le logiciel traite plusieurs types de fichiers : les fichiers portant l’extension tjp ainsi que tji. Il y en a d’autres que nous aborderons peut-être dans un autre article.
Le premier type (tjp) et le type par défaut. Vous pouvez utiliser uniquement cette extension. Dans ce cas-là, la définition complète du projet sera incluse dans le fichier.
Le second type (tji) est un fichier qui est inclus dans la définition du projet. Il ne peut être utilisé tout seul et il nécessite automatiquement un fichier de type tjp qui y fait référence.
Au cours de cette suite de tutoriels, nous allons explorer les principales fonctionnalités du logiciel. J’utiliserai systématiquement plusieurs fichiers afin de structurer le projet.
Nous allons commencer par créer un fichier texte que nous appellerons mon_projet.tjp. Nous allons y mettre la définition du projet principal ainsi que les informations qui seront communes à tous les sous projets ; telles que les jours fériés, les personnes qui participent à plusieurs sous projets, les informations concernant le temps et les devises.
Note : dans les articles suivants, je reprendrai les fichiers déjà créés sans réexpliquer leur contenu. Sentez-vous libre de revenir sur les articles précédents si une notion n’est pas maîtrisée.
Une dernière chose avant de commencer à faire notre projet. le format de fichier utilise abondamment les accolades. Tout ce qui se trouve dans une accolade correspond à des attributs inclus dans la définition de l’objet que nous sommes en train de déclarer. Il est tout à fait possible de créer des sous objets qui auront alors droit à leurs propres accolades qui encadreront leur propre définition. De plus, même si cela n’est pas obligatoire, je vous conseille d’utiliser une indentation avec les accolades.
Note : pour ceux qui ne sont pas familiers des langages de programmation, une indentation est un retrait vers la droite obtenue avec la touche tab. Elle permet d’aligner le texte afin de le rendre plus aéré et donc plus lisible. Si vous créez un sous objet, il faut alors augmenter l’indentation d’un cran à chaque fois que vous imbriquez un nouveau sous objet.
Nous allons commencer par créer un dossier qui accueillera tous les fichiers que nous allons créer. J’ai pour habitude de créer un sous dossier du nom du projet dans mon dossier projet qui se trouve dans mon dossier personnel. Bien entendu, vous êtes libres de vous organiser de tout autre manière. J’attire cependant votre attention sur le fait que le logiciel va générer des fichiers HTML et des dossiers pour les ressources et que si vous devez partager le projet avec quelqu’un, il sera beaucoup plus simple de partager ou de copier un dossier que de devoir sélectionner et copier plusieurs fichiers et dossiers.
Nous allons utiliser un éditeur de texte. Pour ma part, je prendrai celui fourni par défaut par la suite KDE, c’est-à-dire Kate. Vous êtes en mode terminal, vous pouvez utiliser sans problème Vim ou Emacs. Par contre, n’utilisez pas de logiciel de traitement de texte tel que libre Office ou Microsoft office. Bien qu’il soit capable de travailler en mode texte, ils vous proposeront par défaut un format de fichier incompatible avec le logiciel Taskjuggler.
Premier projet
Rentrons dans le vif du sujet. Ci-dessous le squelette de notre premier projet.
project projet "Mon Projet" 2025-12-02 +6m {
timezone "Europe/Paris"
currency "EUR"
dailyworkinghours 11
workinghours mon - fri 8:00 - 12:00, 13:00 - 17:00, 18:00 - 20:00, 21:00 - 22:00
workinghours sat, sun off
scenario plan "Plan" {
scenario reel "Réel"
}
}La définition commence avec le mot-clé project. Il est suivi de l’identifiant du projet, puis du nom, de la date de début du projet ainsi que de la durée estimée. Nous étudierons plus en détail la façon dont sont gérées les dates dans le logiciel. Elle se termine par une accolade ouvrante.
Le mot-clé timezone permet de définir le fuseau horaire du projet. Dans notre cas, nous l’avons positionné sur Paris, mais n’importe quel fuseau connu est accepté. Par défaut le logiciel utilise le fuseau horaire UTC.
Le mot-clé currency représente la devise. Par défaut le logiciel fonctionne avec des dollars. Si vous ne souhaitez pas utiliser les fonctionnalités financières, pouvait ignorer la déclaration.
Le mot-clé dailyworkinghours définit le nombre total d’heures pouvant être utilisé par le projet. Il est indispensable qu’il soit en corrélation avec la plage horaire journalière qui est définie à la ligne suivante.
Le mot-clé workinghours définit les heures travaillées en fonction des jours. Dans notre exemple, nous avons défini cinq jours travaillés et deux jours de repos. Comme vous pouvez le remarquer, nous avons défini les intervalles sur deux lignes tout en répétant le mot-clé en début de la deuxième ligne. Le mot-clé off veut dire que le jour n’est pas travaillé.
Le tiret qui se trouve entre les trigrammes des jours ou les heures permet de définir un intervalle soient deux jours soient deux heures. Les trigrammes de jours qui sont séparés par une virgule, représente uniquement le jour auquel ils appartiennent. Ainsi la première ligne se lit : du lundi au vendredi, de huit heures à midi, de 13 heures à 17 heures, de 18 heures à 20 heures, de 21 heures à 22 heures.
Note : il est tout à fait possible de définir des heures dédiées à chaque sous projets. Dans ce cas-là, nous définirons les heures travaillées lors de la définition du sous projet. Attention cependant, il faut impérativement que les horaires soient répercutés dans le projet principal, sinon le projet ne sera pas produit.
Le mot-clé scenario permet de définir plusieurs scénarios. Dans notre cas, nous avons un premier scénario nommé plan, ainsi qu’un sous scénario nommé reel. Leur principale utilité est de pouvoir tracer les variations entre ce qui est planifié et ce qui se passe réellement. Un autre cas d’utilisation est de pouvoir prévoir l’impact d’une modification sur la planification. Nous verrons plus en détail dans l’article concernant les tâches le fonctionnement des scénarios.

Compilation du projet
Le plus simple est d’utiliser l’invite de commande telle que Konsole. Une fois dans le répertoire où se trouve votre fichier de projet, il suffit de lancer la commande tj3 suivi du nom du projet. Si nous le faisons actuellement, la commande nous renverra une erreur nous signalant qu’il n’y a pas de tâches définies. C’est parfaitement normal. De plus, s’il y a une faute de frappe ou un problème de syntaxe, la commande retournera une erreur en fournissant la ligne où se trouve le problème rencontré. Il suffit alors de retourner dans son éditeur de texte, corriger l’erreur et relancer la compilation.
admin-libre@admin-libre:~$ cd Mes\ projets/ admin-libre@admin-libre:~/Mes projets$ tj3 projet.tjp

Conclusion
Nous venons de voir comment installer le logiciel. Nous avons ensuite vu comment définir le squelette du premier projet. En l’état, il ne fournira rien de visible. Cependant, il s’agit des fondations mêmes du projet. Le squelette présenté peut servir de base pour tout nouveau projet.
Dans le prochain article, nous verrons comment créer un sous projet et y ajouter des ressources.

