[Plan du site]
Vous êtes ici ---
> Le Site du Zéro
> Les tutoriels
> Non-Officiels
> Programmation
> Environnements de développement
> Liste de toutes les notes
Installez et maîtrisez à fond Code::Blocks !
Bienvenue,
Beaucoup d'entre vous utilisent Code::Blocks, seulement est-ce que vous utilisez toutes ses capacités ? Si ce n'est pas le cas j'ai bien l'intention de vous faire découvrir les fonctionnalités les plus importantes qui font que cet IDE est excellent

! Certaines d'entre elles vous seront plus ou moins utiles mais il est toujours bon de savoir qu'elles existent car si vous en avez besoin un jour alors vous serez content de les connaître

.
Afin que vous puissiez comprendre au mieux ce tuto, je vous conseille d'avoir lu
au minimum les deux premières parties du
tuto sur le C et C++ de M@teo21, la troisième partie n'est pas à connaître mais savoir installer la SDL est un plus...
Ce cours est composé des parties suivantes :
-
Partie 1 : Les bases
Cette première partie a pour but de vous initier aux bases de l'utilisation de Code::Blocks... jusque là rien de bien extraordinaire mais vous risquez d'être légèrement déstabilisés par l'arrivée d'un petit nouveau qui est rien d'autre qu'une nouvelle version de Code::Blocks ! Vous êtes surpris

? Ce n'est pas grave, un peu de lecture vous remettra les idées bien en place

.
Et voilà que cette première partie se clôture. Le dernier chapitre aura mis du temps à sortir mais j'y suis finalement arrivé

.
Concernant la deuxième partie nous aborderons certaines options avancées de vos projets (la gestion du compilateur, etc...) et nous verrons peut-être la gestion des scripts dans Code::Blocks (si je juge cela suffisamment intéressant).
Voilà, vous savez à quoi vous attendre maintenant

.
Partie 1 : Les bases
Cette première partie a pour but de vous initier aux bases de l'utilisation de Code::Blocks... jusque là rien de bien extraordinaire mais vous risquez d'être légèrement déstabilisés par l'arrivée d'un petit nouveau qui est rien d'autre qu'une nouvelle version de Code::Blocks ! Vous êtes surpris

? Ce n'est pas grave, un peu de lecture vous remettra les idées bien en place

.
Téléchargez et installez les "nightly builds" de Code::Blocks
Vous connaissez tous Code::Blocks : l'
IDE que M@teo21 propose dans
son tuto sur le C/C++ et finit même par conseiller lors de la deuxième partie de son cours. Si vous l'avez essayé et conservé c'est qu'il a dû vous plaire, en revanche vous avez peut-être été déçu par le fait qu'il n'y ait pas de nouvelle version du logiciel depuis que l'avez. Rassurez-vous il y en a eu ! Et même beaucoup, car les développeurs de Code::Blocks publient une nouvelle version de leur logiciel environ chaque jour !
Quoi mais c'est impossible ou alors ils bossent 25h/24h

!
En fait quand je dis "une nouvelle version chaque jour" c'est un peu exagéré car il s'agit surtout de correctifs du logiciel (qui sont tout de même bienvenus

). Ces correctifs sont surnommés "nightly builds" par ceux qui les développent et permettent de mettre constamment à jour Code::Blocks mais surtout de travailler plus facilement grâce à une interface plus clair et de nouvelles fonctionnalitées.
Pour les Linuxiens les "nightly builds" sont un énorme avantage puisque c'est la seule et unique façon d'installer Code::Blocks sous leur système favoris, cette démarche est maintenant expliquée dans ce tuto.
Ça vous intéresse ? Eh bien on commence tout de suite !
Préparez le terrain et téléchargez les fichiers nécessaires
Cette partie concerne uniquement les possesseurs de Windows !
Tout d'abord, il est conseillé de désinstaller n'importe quelle version de Code::Blocks se trouvant sur votre ordinateur.
Quoi ? Mais j'ai installé la SDL et plein d'autres trucs dessus, je n'ai pas envie de le refaire !
Pour conserver les fichiers que vous avez mis dans le répertoire d'installation de Code::Blocks, il vous suffit de répondre "Non" lorsque le programme de désinstallation vous demande si vous souhaitez supprimer votre configuration. Les fichiers que vous aviez installés seront alors conservés et je vous réexpliquerai comment les réinstaller dans le troisième chapitre

.
Bon, nous pouvons maintenant passer aux choses sérieuses. Il va vous falloir télécharger différentes archives puis les installer. Comme il sort environ une "nightly build" par nuit, je ne serai plus d'actualité dans peu de temps donc il va vous falloir aller à
cette adresse et vous débrouiller tout seuls (mais non je reste pour vous aider

).
Une fois sur cette page, cliquer sur la date la plus récente (normalement c'est le jour où vous lisez ce tuto

)
sauf si il est écrit : "The (la date) build
will NOT be out", il faut qu'il soit écrit : "The (la date)
build is out".
Une fois sur la page suivante, télécharger les fichiers ci-dessous :
Cliquez sur l'image pour l'agrandir
Le premier fichier est la DLL nécessaire à l'affichage de l'interface de Code::Blocks, le deuxième fichier permet de faire fonctionner le compilateur MinGW et les deux derniers fichiers sont les nouvelles "nightly builds" du jour pour Windows et Linux (je n'ai indiqué que Ubuntu, les autres distributions ne disposant que de peu de mises à jour au niveau des "nightly builds").
Cependant il nous manque encore deux choses pour Windows : Le compilateur et le Debugger ! En effet avec les "nightly builds" ils ne sont pas livrés pas défaut, il va donc nous falloir les télécharger :
-
Compilateur MinGW 5.1.4 (lisez ce qui se trouve ci-dessous avant de le télécharger)
-
GDB Debugger 6.8.3
Attention! Je ne garantis pas que je mettrais constamment à jour les liens de téléchargements afin que vous puissiez bénéficier des dernières versions de ces deux programmes! Pensez-donc à faire une petite recherche sur
Sourceforge avant

.
Je déconseille fortement d'installer le compilateur avec le lien donné ci-dessus. En effet, une installation manuelle est toujours plus efficace que l'installation automatique. Voilà l'explication :
Il va nous falloir récupérer plusieurs archives sur SourceForge, tout d'abord allez sur
la page de téléchargement de MinGW. Bien, maintenant il nous faut en tout 5 archives :
Pour savoir ce que vous devez télécharger il vous suffit de prendre les fichiers de type ".gz" (c'est écrit à droite de chaque fichier) situés dans les menus "Release" de chaque page. Sauf pour les deux dernières archives ! Vous aurez en effet remarqué que les deux liens ramènent à la même page, il vous faut donc les deux archives suivantes : celles dont les noms commencent par "gcc-core" ainsi que "gcc-g++", les types de fichier doivent toujours êtres ".gz"

.
Important ! Pour ceux qui possèdent Vista, il faut effectivement les deux derniers fichiers cités mais ceux dont le suffixe est "-vista" et non pas les "normaux" (sans suffixe spécifique en clair...) sinon ça ne marchera pas correctement !
Le nettoyage et les téléchargements terminés, nous allons donc pouvoir passer à la suite.
Installez les différents fichiers téléchargés
Nous y voilà ! Vous avez télécharger tous les fichiers nécessaires, il donc grand temps de commencer l'installation pour que vous puissiez enfin vous replonger dans vos codes sources

.
Installation sous Windows (toutes versions)
Commençons par le compilateur, lancez le programme d'installation de MinGW. Cliquez deux fois sur "Next" en laissant les options par défaut. Acceptez la licence d'utilisation, puis cliquez sur "Next". Vous arrivez sur un menu dans lequel on vous donne la possibilité d'installer plusieurs composants pour pouvoir compiler différents langages, comme ici on ne s'intéresse qu'au C/C++ cochez simplement la case "g++ compiler" et cliquez deux fois sur "Next" (je vous déconseille fortement de changer le répertoire d'installation ! Cela vous évitera de nouvelles manipulations ultérieurement...) puis cliquez sur "Install".
Patientez jusqu'à la fin du téléchargement du compilateur et de son installation (oui je sais c'est long

).
Dans le répertoire qui contient le programme d'installation de MinGW vous remarquerez un nombre plus important de fichiers, vous pouvez (lorsque l'installation est terminée) les supprimer.
Installons maintenant le debugger, il vous suffit de tout extraire dans le dossier "MinGW" (ou autre si vous avez choisis autre chose) et accepter l'écrasement des anciens fichiers.
Nous allons maintenant pouvoir installer la "nightly build" de Code::Blocks que vous avez récupéré.
Parmis les trois archives téléchargées vous en avez normalement une qui commence par "CB" et se finit par "win32", décompressez-la (pour cela vous pouvez utiliser l'excellent
Izarc) et placez tout son contenu à l'adresse "C:\Program Files\CodeBlocks" (vous êtes libres de le mettre dans un autre emplacement si vous le souhaitez).
Il nous reste maintenant plus que deux archives, décompressez-les et mettez leur contenu dans le répertoire de Code::Blocks.
Installation sous Windows Vista
Qu'est-ce que cette partie fait là

? Je croyais avoir déjà téléchargé les bons fichiers pourtant...
Oui, c'est effectivement le cas mais pour ceux qui n'ont pas lu ce chapitre avant sa modification sachez qu'avant le compilateur MinGW était incompatible avec Vista et que depuis il y a eu une mise à jour (c'est pourquoi vous avez dû télécharger d'autres fichiers). Alors vous allez me dire que cette partie n'a donc rien à faire là vu que c'est résolu mais en fait si... C'est juste pour vous demander de me prévenir en cas de problème spécifique rencontré et si il est résolu comment vous avez fait, ça me permettra de faire éventuellement face à des nouveaux problèmes rencontrés par d'autres lecteurs

. Parce que, d'après ce que j'ai vu, la mise à jour n'est pas encore parfaite

.
Installation sous Debian/Ubuntu
Remerciez GuilOooo, sans lui je ne vous expliquerai pas cela
.
Commencez tout d'abord par ouvrir un terminal dans le dossier où est situé votre fichier téléchargé.
(K/X) Ubuntu
Code : Console | $ sudo dpkg -i fichier_telecharge.deb
<votre mot de passe> |
Debian
Code : Console | $ su
<votre mot de passe ROOT>
# dpkg -i fichier_telecharge.deb |
Normalement le compilateur g++ est installé par défaut, si ce n'est pas le cas (ou bien si vous ne le savez pas) allez dans le "Gestionnaires de paquets", cherchez le paquet de g++ et installez-le.
Vous avez fini !
Si vous lisez cette ligne c'est que vous avez sûrement fini d'installer Code::Blocks et bien je ne peux vous dire qu'une chose : Bravo, parce que ce n'était pas très simple (du moins, pas aussi simple que l'installation de la version RC2) !
Réparations d'urgence !
Il se peut que certains d'entre vous ayez des problèmes de compilation, etc... J'ai donc fait fait cette partie afin que vous puissiez résoudre cela rapidement sans avoir à lire les chapitres suivants

. Et puis, avec un peu de chances, ça réduira peut-être de 25% le nombre de messages que je reçois

!
La compilation ne fonctionne pas !
1/ Le compilateur est introuvable...
Cela vient sûrement du fait que vous avez modifié le répertoire d'installation de ce dernier, il est donc indispensable que vous indiquiez à Code::Blocks où il est installé. Allez dans les options du compilateur (Settings -> Compiler and Debugger) et choisissez "Toolchain executables" dans le menu déroulant, cliquez alors sur "Auto-detect", si la détection automatique a fonctionnée vous verrez un message vous indiquant le nom du compilateur ainsi que son chemin. Si ce n'est pas le cas, vous devez entrer vous même le chemin d'installation.
2/ J'obtiens une erreur de compilation signalant des bibliotèques introuvables...
Si l'erreur ne ressemble pas à quelque chose comme cela alors passez votre chemin ou envoyez moi un MP :
Code : Autre1
2
| D:\Documents\codeblocks\testCB2\main.c:1:19: no include path in which to search for stdio.h
D:\Documents\codeblocks\testCB2\main.c:2:20: no include path in which to search for stdlib.h |
Pour une raison qui m'est absolument inconnue, il se trouve que Code::Blocks ne sache pas compiler les projets qui ne sont pas situés sur la même partition (ou disque dur) que celle où est installé MinGW. Pour remédier à cela il vous suffit tout simplement de déplacer votre projet sur la partition de MinGW puis de relancer le projet et compiler le tout (oui, les projets sont déplacables sans que cela cause le moindre problème

).
Où se trouve mon programme une fois compilé ?
Ce problème survient à cause d'une réorganisation de la compilation, je vous apprendrai à résoudre cela plus tard, en attendant votre programme se trouve dans le dossier "bin" du dossier de votre projet

.
Mettez à jour vos nightly builds
Si vous souhaitez rester sous les nightly builds de Code::Blocks (certains aimerons peut-être pas mais j'ai des doutes

), vous voudrez sûrement continuer à mettre à jour vos versions.
Restez au courant des nouvelles versions
Pour commencer il vous faudrait déjà être au courant de l'arrivé de nouvelles nightly builds. Pour cela il y a un moyen très simple qui est le flus RSS (ne fonctionne pas sous IE6 et inférieur).
Cliquez sur
ce lien.
Pour Firefox : Vous avez juste à cliquer sur le bouton "S'abonner maintenant" et mettre le marque-page dynamique dans... dans vos marque-pages

.
Pour IE7 : Vous avez juste à cliquer sur le bouton "M'abonner à ce flux".
Mettez à jour votre "nightly build" de Code::Blocks
Il est très simple de mettre à jour sa nightly build : retournez à
cette adresse (ou utilisez le flux RSS), choisissez la dernière date disponible et téléchargez les trois archives que je vous avais indiqué auparavent.
Une fois téléchargées vous avez juste à décompressez ces archives dans le répertoire d'installation de Code::Blocks en acceptant d'écraser les fichiers présents.
Astuce : Si vous n'avez pas envie de télécharger toutes les archives à chaque fois (notamment pour les petites connexions) vérifiez simplement si les DLL que je vous avais fait télécharger avec l'archive de Code::Blocks ont été mises à jour. Si ce n'est pas le cas vous aurez juste à télécharger l'archive qui contient Code::Blocks (celle qui commence par "CB" et se finit par "win32"

).
Un QCM n'est pas utile mais si toutefois vous avez un quelconque problème avec l'installation de votre "nightly build" n'hésitez pas à
m'envoyer un MP.
L'interface de Code::Blocks
Bien, maintenant que vous avez installé Code::Blocks il ne vous reste plus qu'à vous en servir... oui, mais comment ? Dans ce chapitre, je vais donc vous faire découvrir les principales fonctions de l'interface de ce dernier.
Ce chapitre a donc pour but de vous "mettre dans le bain", en effet, on peut vite passer à côté de quelques petites choses qui sont pourtant bien utiles...
Une interface bien pensée
Y'a pas à dire ! Pour moi, l'interface de Code::Blocks est vraiment très complète et bien faite. Alors bien sûr ce n'est pas quelque chose de bien incroyable mais elle est pleine de simplicité et très ergonomique.
Pour ceux qui n'aurait pas encore installé Code::Blocks, voici l'interface :
Ça change de l'ancienne version hein

?
Bien, nous allons pouvoir commencer à voir à quoi servent ces divers boutons.
Les barres d'outils
Elles sont au nombre de quatre mais il est inutile de vous expliquer à quoi sert la première, vous le découvrirez vous-même.
Commençons par la deuxième barre d'outils :
Cette barre n'est pas d'une utilité formidable mais peut quand même servir... le menu de droite vous permet d'accéder très facilement à une fonction se trouvant dans le fichier actuellement ouvert, le menu de gauche, lui, permet de voir dans quelle classe nous sommes situé dans le fichier actuellement ouvert (ne vous étonnez pas si vous ne savez pas ce qu'est une classe, vous ne l'avez peut-être pas encore vu dans le tuto sur le C++).
La troisième barre d'outils est extrêmement utile puisque c'est celle qui contrôle les options de compilation :
De gauche à droite :
- Ce premier bouton sert à compiler le projet actuellement sélectionné
- Permet d'exécuter le projet une fois compilé
- Compilation puis exécution du programme
- Recompile tous les fichiers du projet y compris ceux qui n'ont pas été modifiés
- Permet d'annuler une compilation (par exemple si vous avez une compilation infinie dûe à une erreur dans votre code)
- Ce menu sert à choisir la cible de construction souhaitée (j'y reviendrai dans le chapitre suivant)
Enfin la dernière barre d'outils sert à utiliser le debugger, malheureusement mes connaissances ne sont que très limitées dans ce domaine je ne pourrais donc pas vous fournir d'explications sur l'utilisation de cette barre d'outils.
Mais puisque le debugger ne reste que très peu utilisé chez les débutants alors cela ne devrait pas vous poser de problèmes, de plus son utilisation est quasiment identique sur n'importe quel IDE

.
Les menus
Ce qui était présenté ci-dessus est un peu rébarbatif mais maintenant ça va être un peu plus intéressant. Je ne sais pas si vous y avez vraiment fait attention mais dans l'interface vous possédez trois menus. Deux d'entre eux sont très importants et il vous sera donc utile de savoir vous en servir. Commençons les présentations :
Le menu de "management"
Ce menu est le plus utile de tous. Il vous permet d'ajouter, supprimer des fichiers de vos projets, ainsi que de les paramètrer, etc...
Vous remarquerez qu'il y a plusieurs onglets, le premier concerne vos projets, le deuxième liste toutes les fonctions, classes (et même plus !) que vous avez pu créer dans les fichiers de votre projet, le troisième n'est pas vraiment utile je n'en parlerai donc pas.
Nous allons bien entendu commencer par ce premier onglet nommé "Projects". Vous pouvez y voir toute une arborescence qui commence par "Workspace", il s'agit de votre espace de travail. En faisant un clique droit dessus vous pourrez le renommer, l'enregistrer, y rechercher un fichier, etc...
Juste en dessous vous pouvez voir deux projets dont un qui est marqué en gras :
cela signifie que c'est le projet actif ! Autrement dit, c'est le projet qui sera compilé si vous activez cette dernière.
Dans chaque projet est listé les fichiers qui lui sont associés, ceux-ci sont classés en fonction de leur type. Si vous faites un clique droit sur un de vos projets vous pourrez alors l'activer, le fermer, ajouter des fichiers, le compiler, accéder à ses propriétés, etc...
Et enfin une dernière chose : vous pouvez supprimer un fichier de votre projet en faisant un clique droit sur celui-ci.
Passons maintenant au deuxième onglet nommé "Symbols", comme je l'ai expliqué précédemment, il liste (à peu près) tout ce qui est essentiel à votre projet à savoir les fonctions, les classes, etc...
Dans cet onglet, vous pouvez voir un listage des fonctions et variables globales, des classes et diverses autres choses. Je ne vais pas m'éterniser sur cet onglet mais je tiens au moins à vous apprendre le code des symboles qui sont affichés parce que ce n'est pas évident à comprendre du premier coup :
- Un carré vert seul est une variable globale
- Un carré rouge est une variable privée
- Un dièse est une constante de préprocesseur
- Une icône jaune avec écrit "Type def" est un... type def
!
- Un carré vert associé à un '+' est un constructeur
- Un carré vert associé à un '-' est un destructeur
- Un carré vert entouré de parenthèses est une fonction publique
- Un carré rouge entouré de parenthèses est une fonction privée
Bien sûr, si il n'y avait qu'un listage ce ne serait alors pas très utile... c'est pourquoi lorsqu'on fait un clique droit sur un symbole vous pouvez alors accéder rapidement à sa déclaration ou son implémentation.
Voilà, nous en avons terminé avec ce satané menu (j'en avais marre d'expliquer son fonctionnement

). On ne dirait pas mais il sera très utile pour tous vos projets.
Les fichiers ouverts
Peu utile, il vous permet d'avoir un aperçu de tous les fichiers qui sont actuellement ouverts.
Je me demande d'ailleurs à quoi ça sert de l'expliquer mais bon... je suis assez perfectionniste
.
Les messages de compilation et plus...
Bon, là je ne tiens pas à vous expliquer ce que veulent dire les éventuels messages d'erreur qui peuvent apparaître car ce n'est pas mon rôle, je vais ici vous décrire à quoi servent ces différents onglets. Même si c'est très rapide c'est quand même important

.
Code::Blocks : C'est un peu un historique de tout ce que vous avez demandé de faire à ce dernier. Par exemple si vous avez ouvert un projet il sera alors écrit :
Code : Console | Opening chemin_du_projet: done |
Code::Blocks Debug : C'est toujours un historique mais cette fois celui-ci s'adresse surtout à ceux qui modifient le code source de Code::Blocks. En effet, dans cet onglet sont listé toutes les actions effectuées par Code::Blocks comme la mise en cache des fichiers de votre projet. Mais bon, comme nous ne modifions pas le code source de ce logiciel cela ne nous concerne pas

.
Search results : Affiche les résultats d'une recherche
dans plusieurs fichiers uniquement (Search -> Find in files...).
ClearCase : Cette fonction est toute récente je n'ai donc pas encore eu le temps d'étudier ni son utilité, ni son fonctionnement. Dès que j'aurais fini mes recherches ainsi que mes tests, je vous ferais alors un résumé (toutefois, si c'est intéressant)

.
Build log : Cet onglet affiche l'historique des opérations de la dernière compilation.
Build messages : Cet historique est quasiment identique au précedent sauf qu'il n'affiche que les messages d'erreurs et rien d'autre. L'avantage de cet onglet c'est qu'en double-cliquant sur le message d'erreur on arrive à la ligne correspondante, l'inconvénient c'est qu'il faut aller dans le "Build log" si on veut faire Copier/Coller du message d'erreur en question :/ .
Debugger : Pas bien compliqué à comprendre. C'est l'historique des opérations du debugger.
Voilà, c'est terminé pour ce dernier menu, alors je suis quasiment sûr que vous vous ne servirez même pas de la moitié de ces onglets mais au moins vous saurez à quoi ils servent

.
L'autocomplétion
L'autocomplétion... What is that

?
Citation : WikipédiaEn informatique, le complètement ou complètement automatique (on trouve aussi complétion et autocomplétion, qui sont des anglicismes) est une fonctionnalité permettant à l'utilisateur de limiter la saisie d'informations avec son clavier. De nombreux logiciels possèdent cette fonctionnalité : les éditeurs de texte prévus pour l'édition de code source, les traitements de texte ou encore les navigateurs Web.
Bon, je crois que c'est clair

... Mais en fait qu'est-ce que ça vient faire là ? C'est très simple : Code::Blocks possède cette faculté !
Alors quand je parle d'autocomplétion dans Code::Blocks il ne s'agit pas de vous aider à écrire les mots "int" ou bien "char"

, mais de compléter automatiquement les noms de variables ou bien encore vous rappeller ce que ce sont les paramètres d'une fonction, etc... et je peux vous dire que ce n'est pas rien ! En plus d'être pratique, cette fonction est puissante !
Ne venez pas me dire que ça ne fonctionne pas... en effet, il faut enregistrer ses fichiers si on veut que l'autocomplétion fonctionne car Code::Blocks analyse le code source une fois que celui-ci est enregistré !
Alors quelles sont les différentes possibilités de l'autocomplétion ? Eh bien pour vous en faire un résumé je vais vous parler de ma propre expérience : il m'est souvent arrivé d'écrire des noms de variable assez long comme
nomVariableNumeroUne et si on s'en sert fréquemment il est assez contraignant de la réécrire à chaque fois surtout avec les majuscules.
C'est donc là que l'autocomplétion est utile, il vous suffit d'écrire 3 lettres de la variable en question et à ce moment là vous avez un menu qui apparaît juste en dessus de votre curseur et qui vous donne la liste des variables qui peuvent correspondre, voilà un exemple :
À ce moment là, il vous suffit alors de vous diriger avec les flèches pour choisir ce qui correspond. C'est pratique hein

?
Ce n'est pas tout ! Si vous créez une fonction avec dix paramètres (soyons fous) à entrer alors ça va être dur de vous en souvenir ! Dans ce cas là, une fois la déclaration effectuée et enregistrée, à chaque fois que vous ouvrirez la première parenthèse de la fonction vous aurez alors un résumé des paramètres à entrer et je peux vous dire que c'est vachement utile !
Alors bien sûr l'autocomplétion ne se limite pas à cela, il y a aussi de quoi faire avec les classes et tout ça. Seulement, je ne peux pas vous faire un résumé complet sinon j'en aurais jamais fini, je vous ai donc indiqué le plus important mais le reste vous le découvrirez vous même

.
Bien, ce chapitre est terminé. Alors bien sûr certains l'auront trouvé rébarbatif mais c'est tout de même essentiel à l'utilisation de Code::Blocks !
Dans le prochain
épisode chapitre nous verrons le paramètrage d'un projet et je peux vous dire que c'est tout de suite plus intéressant

.
Configurez vos projets
La plupart d'entre vous écrivez votre code, compilez et puis basta... mais est-ce qu'il vous arrive d'aller dans le panneau d'options de votre projet? C'est pourtant lui qui vous permet de paramètrer vos projets...
Dans ce chapitre, nous allons donc voir quel est ce panneau et à quoi il sert. Pour cela, créez au préalable un nouveau projet avec les options par défaut (je vous expliquerai plus tard à quoi elles servent

) car nous allons travailler dessus.
Au fait, si l'icône de ce chapitre vous étonne c'est normal, mais vous comprendrez bien vite

.
Qu'est-ce que ce panneau ?
Ce panneau, vous devez sûrement le connaître, cliquez sur "Project -> Properties" et le voilà :
Le panneau des options pour un projetIl est important de préciser qu'il a été
entièrement revu dans les nightly builds ce qui risque de déstabiliser les anciens utilisateurs de Code::Blocks RC2, c'est pourquoi je vous conseille de lire ce chapitre même si vous aviez des facilités avec la RC2

.
Voiçi donc ce fameux panneau, il vous permet de configurer vos projets ainsi que de récupérer des informations importantes. Commençons tout de suite à voir à quoi servent les différents onglets proposés...
Project settings
Dans cet onglet, il vous est possible de paramètrer les options principales :
Title : Vous y entrez le nom de votre projet, il s'affichera dans l'arborescence à gauche de votre code.
Platforms : Une petite nouveauté, vous pouvez indiquer pour quel(s) OS votre projet est codé (cela n'a aucune influence sur le code).
Filename : Le chemin de votre projet.
Makefile : Permet de définir le Makefile que vous voulez utiliser (si vous ne savez pas ce que c'est cherchez un peu sur internet, ici ce n'est pas le sujet). Si vous ne cochez pas la case "This is a costum Makefile" alors il sera généré automatiquement et remplacera celui qui s'y trouvait auparavent.
Precompiled headers : Vous permet de choisir de quelle façon doivent être générés les headers précompilés. Si vous modifiez cela, vous
devez supprimer l'ancien header afin d'éviter les conflits.
Object names generation : Très utile, cet ajout vous permet, dans de gros projets, d'éviter des problèmes d'écrasement avec des fichiers dont les noms sont identiques, vos fichiers seront renommés afin de palier à ce problème.
Il reste deux boutons :
Project's dependencies... : Permet de voir les dépendances de votre projet.
Project's build options... : Permet de paramètrer
en profondeur les configurations cible (vous verrez plus tard ce que c'est

).
Notes
Attends ! T'aurais pas sauté plusieurs onglets là

?
Effectivement, mais il ne s'agit pas d'une erreur... la raison c'est juste que je ne peux pas tout expliquer, d'autant plus que Code::Blocks change très fréquemment donc c'est dur de suivre

. Mais ne vous inquiétez pas, l'utilisation de certains de ces onglets est expliquée plus tard.
Reprenons. Cet onglet est soi utile, soi inutile, mais dans tout les cas certains l'apprécieront... il permettra (comme son nom l'indique) de mettre des notes dans vos projets... moi personnellement j'adore parce qu'avant je marquais mes idées dans des fichiers texte et il fallait que je pense à les ouvrir

.
En parlant de penser à les ouvrir, vous pouvez voir en bas du panneau qu'il y a une case à cocher : elle permet d'activer l'affichage des notes dès que l'on ouvre le projet, utile lorsque vous voulez envoyer votre projet à un ami... au moins il ne se perdra pas

.
"C/C++ parser options" et "Debugger options"
Ces deux onglets vous servent à éditer les options d'analyse de votre code. C'est relativement complexe, je ne vais donc pas vous expliquer tout de suite comment modifier cela, je le ferais peut-être mais dans la deuxième partie de ce big-tuto.
EnvVars options
Là ce n'est pas que c'est difficile mais il vous manque encore deux ou trois notions... j'aborde donc cela à la fin de ce chapitre

.
Les cibles de construction
Nous voiçi donc dans une partie très importante, nous allons apprendre à nous servir des "cibles de construction" (traduction personnelle de "Build Targets", c'est aussi l'explication de l'icône du chapitre

) qui sont très importantes mais surtout relativement utiles lorsque l'on travail sur un gros projet.
Mais... concrètement, c'est quoi ?
Et bien cela vous permet de créer plusieurs fois le même projet mais avec des paramètres différents. C'est vraiment très pratique... Imaginons que vous développiez un programme, lorsque vous le codez, vous le compilez avec les paramètres par défaut du compilateur mais lorsque vous voulez compilez le programme final vous préférez configurer le compilateur de façon plus pointieuse afin d'être sûr qu'il n'y aura aucun problème. Eh bien au lieu de faire deux projets qui auront le même code mais des paramètres différents vous avez juste à créer un projet avec un code et deux cibles de construction, vous n'avez plus qu'à paramétrer les cibles et hop !... vous choisissez la configuration souhaitée au moment de la compilation

!
Je me doute bien que ça vous intéresse, nous allons donc voir comment faire cela

.
Tout d'abord, il faut savoir où sont situées ces fameuses cibles. Rappellez-vous, lors de la présentation des onglets j'en avais sauté quelques un, choisissez d'abord l'onglet "Build targets", vous tombez sur un panneau de ce style :
Les cibles de construction
Build targets
Voilà un beau bordel... mais je vais vous aider à décortiquer ça. Sur la gauche, vous pouvez voir un cadre nommé "Build Targets", dans ce cadre il y a un menu contenant vos cibles de configurations, par défaut vous avez deux cibles qui sont nommées Debug et Release.
Stop ! À quoi elles servent ces deux cibles

?
Eh bien, la première cible nommée "Debug" a pour but, comme son nom l'indique, de vous aider à trouver les erreurs notamment lorsque vous faites une interface graphique, premièrement elle affiche constamment une console lors de l'exécution de votre programme mais aussi les options du compilateur sont différentes. La deuxième cible nommée "Release" vous permet simplement de compiler votre programme dans sa version finale, les options du compilateur sont celles par défaut et il y a une petite pointe d'optimisation.
Après ce petit détour, nous pouvons revenir au panneau : vous pouvez constater qu'à la droite de la liste se trouve plusieurs boutons. Les quatre premiers sont les plus élémentaires, ils permettent, dans l'ordre, d'ajouter une cible de construction, de la renommer, de la copier (un nouveau nom vous sera demandé) et de la supprimer.
Il nous reste cinq boutons :
Virtual Targets : Très utile ! Il permet de créer une cible virtuelle qui associe plusieurs cibles de construction...
J'ai rien compris !
C'est normal, je me suis mal expliqué, en fait vous avez deux cibles actuellement, celles-ci sont nommées "Debug" et "Release". Si, pendant vos compilations, vous avez autant besoin de la cible "Debug" que de la cible "Release" alors il serait bien de pouvoir les compiler en même temps... eh bien avec le bouton "Virtual Targets" c'est possible ! Commencez par cliquer dessus, vous verrez un panneau comme celui-ci :
La liste des cibles virtuelles
À gauche, vous avez vos cibles virtuelles (traduction de "virtual targets") et à droite vous pouvez voir à quelle(s) cible(s) est associé la cible virtuelle actuellement sélectionnée, vous pouvez en ajouter avec le bouton "Add", les éditer avec le bouton "Edit" et les supprimer avec le bouton "Remove".
Une dernière chose : lors de la compilation avec une cible virtuelle (pour la choisir vous devez faire comme lorsque vous choisissez une cible de construction) vous aurez plusieurs programmes créés (ceux des cibles de construction associées à la cible virtuelle), si vous cliquez sur le bouton pour exécuter ces programmes il vous sera alors demandé quelle cible de configuration vous souhaitez exécuter

.
Dependencies : Si vous cliquez dessus, un panneau s'ouvre alors, il vous permet de gérer les dépendances de votre projet. Je ne m'attarde pas là dessus vu que je n'en sais pas grand chose.
Re-order : Rien de plus simple ! Ce bouton vous permet de ré-ordonner vos cibles de construction.
Build options : Là je ne vais pas pouvoir vous faire une description immédiate, j'aborderai cela dans la deuxième partie de ce big-tuto en raison de sa complexité

.
Create project from target : Un bouton encore une fois d'une grand utilité ! Son utilisation n'est pas fréquente mais cela n'empêche pas le fait qu'il est utile. Si vous cliquez dessus vous pourrez exporter la cible de construction sélectionnée dans un nouveau projet. Essayez par vous-même...
Voilà, c'est tout pour ce fameux cadre...
Selected build target options
Intéressons-nous maintenant au cadre de droite nommé "Selected build target options", comme son nom l'indique, il permet de configurer les paramètres de la cible sélectionnée (je précise que là ce sont des paramètres basiques, je vous apprendrais plus tard comment faire quelque chose de bien plus intéressant

).
Voici donc la description de chaque bouton ou zone de texte dans l'ordre :
Platforms : En cliquant sur le bouton "..." vous aurez la possibilité de cocher les OS compatibles avec votre code, si ils sont tous cochés alors il sera inscrit "All" dans le champ.
Type : Pas bien dur à comprendre ça, vous choisissez comment doit être lancé votre programme : en console, en interface graphique (que vous devez d'abord avoir codée), ect...
Les trois cases à cocher permettent, dans l'ordre :
- De faire une pause à la fin de votre programme lorsqu'il est exécuté depuis Code::Blocks, il ne se ferme pas automatiquement. Cette option n'est disponible que lorsque vous faites un programme en console !
- Je n'ai aucune idée de son utilité ! Toutefois, sachez que ce n'est disponible que si vous créez une bibliotèque dynamique (cf: ici) !
- Même chose que pour la case à cocher précédente...
Output filename : Vous permet de choisir le chemin de création de votre programme pour la cible de construction actuellement sélectionnée.
Si vous changez le chemin de destination mais que vous avez déjà compilé alors l'ancien programme ne sera pas supprimé automatiquement !
Les deux cases à cocher suivantes permettent, dans l'ordre :
- De générer automatiquement un chemin de destination pour votre programme
- De générer automatiquement une extension pour votre programme/bibliotèque en fonction du type de projet que vous avez choisi
Execution working dir : Cela vous permet de choisir le chemin d'exécution de votre programme, par défaut ce sera toujours le dossier de votre projet.
Objects output dir : Vous pouvez y spécifier le dossier où seront stockés les fichiers compilés (pour les têtes en l'air, vous avez un rappel de ce que c'est
ici).
Build target files
Il nous reste plus qu'un dernier cadre nommé "Build target files", là je ne vais pas m'éterniser... il s'agit simplement de choisir les fichiers que vous voulez compiler

.
Pensez bien aux dépendances avant de décochez tel ou tel fichier!
Les ajouts de fichiers à un projet
Je tenais au moins à vous informer sur ça : dès que vous ajouterez un fichier à votre projet il vous sera alors demandé avec quelles cibles de construction vous voulez que ce fichier soit compilé : faites votre choix

.
Passons à la suite...
Les variables d'environnement
Comme promis, je vous explique maintenant le fonctionnement des variables d'environnement. Rappellez-vous ! C'est un onglet dans le panneau d'options nommé "EnvVars options", j'avais dû sauter ce passage car je tenais à ce que vous sachiez d'abord vous servir des cibles de construction.
Nous pouvons donc commencer...
Les variables d'environnement ne sont pas particulièrement difficiles à utiliser mais plutôt complexes à expliquer, je vais donc faire de mon mieux...
Lorsque vous utilisez les options de Code::Blocks vous avez la possibilité de faire appel à des variables, vous allez sûrement vous demandez quel en l'utilité... et bien aucune à part faire gagner du temps (le seul avantage c'est de pouvoir tout changer en modifiant simplement la valeur de la variable). Il est possible de faire des variables accessibles dans tous les projets mais vous pouvez aussi limiter votre projet à un seul groupe de variable (pratique si vous créez plusieurs variables de même nom, il suffit alors de les mettre dans des groupes différents), c'est pour cela que l'on a créé les variables d'environnement.
À noter que les variables créées dans les options de Code::Blocks sont faites pour vos projets et non pour vos codes.
Plutôt qu'un long discours, nous allons essayer nous-mêmes. Allez dans l'onglet "EnvVars options" et cochez la case "Select environment variables set to be applied", vous pourrez alors choisir quel groupe de variables vous souhaitez, normalement vous n'avez que "default" de disponible. Bien, maintenant que vous avez choisi votre groupe, il faut lui attribuer des variables, pour cela fermer le panel des options en cliquant sur "OK" puis aller dans "Settings -> Environment", là descendez dans le menu de gauche jusqu'à voir "Environment variables", cliquez dessus.
Les variables d'environnementSi vous avez bien suivi vous êtes normalement tombé dans le panneau (elles sont bien mes blagues hein

?) :
Par défaut, vous êtes sur le groupe nommé "default", nous allons rester dessus, retenez seulement qu'il suffit de cliquer sur "Create..." pour en créer un nouveau

.
Pour créer une nouvelle variable nous allons cliquer sur "Add", mettez le nom suivant :
debug_chemin_prog et entrez la valeur
bin\debug\, faites de même pour la variable
release_chemin_prog et la valeur
bin\release\.
Bien, vos variables sont créées mais ne sont pas encore initialisées, vérifiez donc quelles soient toutes les deux cochées puis cliquez sur le bouton "Set now" ce qui aura pour effet de mettre vos variables en mémoire vous pourrez alors vous en servir immédiatement.
Notez bien que si vous n'aviez pas cliquez sur "Set now" vos variables auraient alors été initialisées au prochain démarrage. Encore une chose : si vous ne cochez pas les variables alors celles-ci ne seront jamais initialisées.
Bon, maintenant fermez le panneau puis retournez dans les options votre projet puis dans l'onglet "Build targets", sélectionnez la cible "Debug" et entrez alors dans le champ "Output filename" la chaîne de caractères suivante :
$(debug_chemin_prog)programme.exe
Faites de même pour la cible "Release" mais entrez la chaîne suivante :
$(release_chemin_prog)programme.exe
Voilà ! Ce que nous venons de faire est totalement mais alors totalement inutile mais bon il s'agissait de vous montrer le principe des variables d'environnement

!
Décortiquons un peu tout ça :
Nous avons tout d'abord commencé par choisir le groupe de variables que nous souhaitions puis nous avons créé deux variables nommées
debug_chemin_prog et
release_chemin_prog. Ensuite nous avons modifié les chemins de création du programme en y intégrant les deux variables, vous avez pu alors remarquer qu'il fallait entourer la variable des trois caractères suivants pour pouvoir afficher sa valeur et pas son nom :
$()
Nous avons ensuite rajouté le nom du programme et son extension, en clair nous obtenons le chemin
bin\Debug\programme.exe pour la cible "Debug" et le chemin
bin\Release\programme.exe pour la cible "Release", en clair on en revient au même point mais c'était juste pour vous montrer l'usage des variables d'environnement

.
Les variables globales
Certains trouveront bizarre de voir cette partie dans ce chapitre... malheureusement, je n'ai pas le choix car c'est l'unique chapitre où je peux aborder les variables globales, je ne vais pas créer un nouveau chapitre uniquement pour parler des variables globales :/ .
Pour commencer, les variables globales sont nouvelles dans Code::Blocks, mais comprenons nous : il ne s'agit pas ici des variables globales que vous mettez dans votre code, ce sont des variables spécifiques à Code::Blocks qui n'ont rien à voir avec votre code.
Ne confondez pas les variables globales avec les variables d'environnement ! Elles n'ont rien à voir entre elles !
Mais alors c'est quoi ces variables et à quoi elles servent

?
Il s'agit d'un type de variable qui permet d'enregistrer les chemins d'installation de vos bibliotèques, c'est beaucoup plus pratique que de devoir configurer à chaque fois un nouveau projet pour une bibliotèque spécifique.
Ça vous intéresse ? Alors passons à la suite, et vous verrez que l'on ne peut plus s'en passer

.
Allez dans le panneau d'édition des variables globales "Settings -> Global variables". Vous voyez maintenant quelque chose d'assez... bordelique

!
Supposons que vous vouliez installer la SDL...
Donc si vous voulez installer la SDL, vous allez devoir créer une variable globale nommée "sdl", pour cela cliquez sur "New" (celui du bas) et entrez le nom de votre variable (dans notre cas "sdl").
Dans la partie basse de la fenêtre, vous verrez trois champs importants : "base", "include" et "lib"
Dans le champ "base", vous devez spécifier le dossier englobant toute la SDL (pour moi c'est "C:\SDL-1.2.11"). Les deux champs suivants sont facultatifs uniquement dans un certain cas : il faut que les dossiers "include" et "lib" soit directement les sous-répertoires du chemin indiqué dans "base", si ce n'est pas le cas vous devrez indiquer les chemins d'accès à ces dossiers.
Voilà ce que vous devriez normalement obtenir :
L'éditeur des variables globales
Et ensuite ? Eh bien c'est terminé ! Maintenant, tout ce que vous avez à faire c'est créer un nouveau projet de type SDL (File -> New -> Project -> SDL project) et indiquer, lorsqu'on vous le demandera, que vous voulez utiliser la variable "sdl" en écrivant dans le champ "Please select SDL's location" la syntaxe suivante :
Code : Autre
Voilà, c'est tout pour ce chapitre et je pense que ça vous suffit à vous aussi. Ce chapitre était gros mais plein de savoir

!
Vous voilà maintenant fin prêts à paramétrer correctement
tous vos projets ainsi que d'installer correctement une bibliotèque, croyez-moi ce n'est pas une perte de temps

. Ça peut être même très utile dans certains cas ! Notamment quand vous utilisez une bibliotèque non standard.
Le prochain chapitre portera sur les différents plugins de Code::Blocks

.
Les plugins débarquent !
Les plugins... ces petits programmes qui viennent s'intégrer à un logiciel sont devenus indispensables pour Code::Blocks. En effet, certains sont installés par défaut et ne peuvent être supprimés, en revanche pas moins d'une vingtaine de ces plugins sont facultatifs mais ce sont eux qui font la force de Code::Blocks (j'exagère peut-être un peu oui

). Dans ce chapitre, vous découvrirez donc les plugins les plus importants ainsi que la façon d'en récupérer de nouveaux.
Vous êtes prêts ? Let's go !
Attention ! Dans cette partie je vais vous présenter certains plugins que vous n'aurez peut-être pas si vous utiliser la version 8.02 de Code::Blocks. Ceci sera d'ailleurs forcément le cas si, lors de l'installation vous avez choisi celle qui est nommée "standard" ou inférieure.
Pour ceux qui possèdent les nightly builds, pas de problèmes...
Petit récapitulatif
Tout d'abord :
À quoi servent les plugins ?
Ce sont des petits programmes fonctionnant sur un seul et même logiciel, ils ont pour particularité d'apporter de nouvelles fonctionnalités.
Bien, après cette explication on ne peut plus claire (et sommaire

), passons au vif du sujet : Code::Blocks et ses plugins !
Oui, Code::Blocks est bourré de plugins (installés par défaut) qui sont de plus ou moins grande utilité (parce que Tetris et Snake c'est pas le plus important pour la programmation

!). Certains d'entre eux sont indispensables et ne peuvent être désinstallés mais une grande partie peuvent l'être, enfin le plus important c'est de pouvoir en installer des nouveaux et heureusement on le peut. Mais avant de s'intéresser à ceux que l'on peut ajouter il va déjà falloir voir comment se servir de ceux que l'ont possède.
Présentation de l'architecture des plugins
Où sont situés les plugins ? Comment sont-ils créés ? De quelle façon peuvent-ils être paramétrés ?
Autant de questions auxquelles je vais m'efforcer de répondre... Commençons par voir comment nous pouvons les utiliser. Je pense que vous aurez tous remarqué le menu "Plugins" dans la barre d'outils : c'est là qu'ils sont situés.
Quoi ?! Il n'y a que ça

?
Non, je vous rassure, ce ne sont que les plugins émergents mais en tout cas ce sont les plus utiles. Et c'est d'ailleurs à ce niveau là que les plugins sont complexes : ils sont situés un peu n'importe où. En effet, l'architecture des plugins de Code::Blocks est telle que vous pouvez faire en sorte que votre plugin soit affiché à certains endroits et pas à d'autres. Il y aura des donc des plugins qui bénéficieront d'un panel de paramètres dans les options de Code::Blocks alors que d'autres se contenteront d'un simple clique dans le menu "Plugins" de la barre d'outils.
Mais plutôt qu'un long discours qui vous fera dormir, passons plutôt à la pratique

.
Pour l'exemple, j'ai choisi de prendre un outil qui sera sûrement un des plus utiles pour vous tous, j'ai nommé : Source code formatter !
Alors bon, le nom c'est bien beau mais si vous en saviez l'utilité ce serait mieux hein

? Ce plugin permet tout simplement de réorganiser votre code en fonction de standards bien précis, en clair : il permet de modifier
au-to-ma-ti-que-ment l'indentation de votre code !
À noter que ce système d'indentation n'appartient pas à Code::Blocks, le programme permettant d'effectuer cela appartient à MinGW, le plugin n'est qu'une interface.
Vous allez me dire : "Oui, mais j'aime bien l'indentation de mon propre code moi !" Alors utilisons un exemple : vous prenez le code d'une autre personne (volé ou pas, c'est pas mon problème

) mais l'indentation est absolument hideuse, répugnante, éc?urante, effrayante, etc... Dans ce cas là, vous pouvez utiliser le plugin en question afin de réorganiser tout ça selon votre idéal !
Donc, pour illustrer cela, je vous ai pondu un code dont vous me direz des nouvelles (attention, j'ai eu du mal à faire un truc aussi laid alors ne le sous-estimez pas

!) :
Code : C++1
2
3 | #include <iostream>
using namespace std;
int main() {for(int i=0;i<20;i++){cout<<"Vous avez "<<i<< " ans !"<<endl;}}
|
Donc, copiez-moi ce code monstrueux dans Code::Blocks et allez dans "Plugins -> Source code formatter" et normalement ça vous donne un beau code tout propre.
Alors évidemment, cette indentation peut ne pas vous convenir et c'est pour cela qu'il est possible de modifier les paramètres d'indentation soit selon les 5 types d'indentation proposés, soit selon vos propres préférences. Commencez tout d'abord par aller dans "Settings -> Editor".
C'est là que se dévoile l'architecture complexe des plugins : chaque plugin peut, si l'auteur le souhaite, disposer d'un menu de paramètrage qui est implanté dans les panels d'options de Code::Blocks ! En effet, si vous descendez le menu déroulant à gauche jusqu'en bas, vous verrez un bouton nommé "Source Formatter", cliquez et vous obtiendrez un menu entièrement dédié à ce plugin :
Attention ! N'allez pas croire que les menus de paramétrage des plugins sont implantables uniquement dans le panneau "Editor", ils peuvent tout aussi bien être intégrés dans le panneau "Environment" ou autre.
Bon, tant que j'y suis, je vais vous montrer comment se servir de ce menu là mais le but est atteint : vous montrer une partie de l'architecture des plugins.
Donc, vous remarquerez qu'il y a 3 onglets et un panel de 6 choix dans le premier onglet : ceux-ci correspondent au type d'indentation souhaité. Le dernier choix est un choix personnalisable, en clair vous créez vous-même votre propre indentation.
Avant que vous ne commenciez à vous jetez sur la création de votre propre indentation je tiens à préciser que son paramétrage ne se fait pas par le biais du champ de texte mais par le biais des 2 onglets restant ! Eh oui, c'est un peu plus compliqué tout de suite hein

?
En plus vous avez pas de bol : j'ai décidé de ne pas faire d'explication sur toute cette opération ! En effet, je juge que les 5 indentations disponibles sont largement suffisantes et en plus je ne tiens pas à m'éterniser sur un seul et même plugin alors qu'il y en a tant d'autres. J'espère que vous me comprendrez.
Dernière petite chose : parfois vous retrouverez certains plugins dans les options de vos projets. Preuve que les plugins sont partout.
Quelques plugins...
Alors vous dire quelles sont les possibilités offertes par les plugins c'est bien beau mais faudrait-il encore que sachiez vous servir de quelques-uns d'entre eux pour en avoir l'utilité... Je vais donc vous faire une petite présentation de certains plugins plus ou moins utiles...
Les inutiles
On commence par les inutiles (parce que c'est ce qui me plaît le plus

) avec :
BYO Games
Alors celui-là je serrais prêt à mettre ma main au feu que vous l'avez déjà essayé bande de galopins ! Comme son nom l'indique c'est un regroupement de jeux qui sont au nombre de... deux. Mais c'est pas grave, c'est plus qu'il n'en faut ! Bon, je pense que je n'ai pas besoin de vous expliquer comment fonctionnent le Tetris ou bien le Snake hein

? Sachez simplement que ce plugin s'ouvre toujours de la même façon que les autres : "Plugins -> BYO Games"
Concernant les options, oui, il y en a ! Et c'est d'ailleurs une très bonne chose car celles-ci servent à vous indiquer quand vous avez dépassé un certain temps de jeu, ainsi on vous rappelle que Code::Blocks sert surtout à coder et pas à jouer, de plus vous ne pourrez pas rejouer avant un certain temps de travail. Pour accéder aux options, allez dans "Settings -> Environment -> C::B Games". Pas besoin de vous expliquer comment paramétrer tout cela, même vous vous pouvez y arriver ! Quoi que...
Code statistics
L'utilité de ce plugin est encore un peu faible c'est pourquoi je le met ici. Comme son nom l'indique il s'agit d'un plugin permettant de donner des statistiques sur vos codes. Lancez-le de la même manière que les autres et vous obtiendrez des statistiques détaillées. Vous trouverez les options de ce plugin dans "Settings -> Editor -> Code statistics settings" mais il n'y a rien à modifier (les options du plugin sont aussi inutiles que ce dernier

).
Les utiles
Eh oui, la partie concernant les plugins inutiles est déjà finie, mais j'essayerai d'en rajouter si certains développeurs ont envie d'en faire des nouveaux. Attaquons maintenant les plugins
utiles (ça nous changera...).
To-Do List
Alors celui-là je crois que c'est mon préféré ! Pourquoi ? Tout simplement parce que tout les petits commentaires laissés dans vos codes peuvent être répertoriés en un clique dans la To-Do List. Alors bien sûr, tous les commentaires ne sont pas listés, il faut que ceux-ci aient une syntaxe spéciale.
Et comment je la connais ta syntaxe moi ?
Rassurez-vous, une interface a été codée pour faciliter cela, du coup la syntaxe nécessaire est écrite automatiquement. Voyons tout de suite comment ajouter une note à un endroit de votre code, faites un clique-droit sur une page de code et cliquez sur "Add To-Do Item...", vous obtiendrez une fenêtre semblable à celle-ci :
Insertion d'une To-Do list
Alors, comme vous pouvez le constater, il y a un champ "Text" pour noter tout ce que vous voulez et ensuite viennent le nom d'utilisateur ("User"), le type de commentaire ("Type"), la priorité du commentaire ("Priority"), la position du commentaire par rapport à votre curseur ("Position") et enfin le style de commentaire ("Comment style"). Alors je ne vais pas vous décrire comment utiliser chacune de ces options, il vous suffit d'essayer mais par contre je tiens à dire que ce qui me paraît le plus intéressant dans toutes ces options c'est la dernière. En effet, elle permet de modifier le style du commentaire et donc, par exemple, lui donner le style d'un "Error", ainsi la compilation ne pourra pas être lancée tant que ce commentaire sera présent... Pratique, si vous avez une tâche à faire avant toute compilation, vous ne risquerez pas de l'oublier.
Bon, c'est bien beau tout ça mais si c'est seulement pour créer des commentaires je savais le faire sans ce plugin

...
Non, non ! C'est là que la "To-Do List" devient utile ! Elle est capable de lister tous les commentaires qui sont dans tout vos codes ainsi vous pouvez visionner toutes vos notes importantes en un clique ! Mais pour cela il vous faut d'abord afficher la fenêtre qui liste tout cela : "View -> To-Do List". Et voilà ! Il ne vous reste plus qu'à cliquer sur "Refesh" pour rafraîchir toutes les entrées et ainsi voir toutes vos notes.
La "To-Do List" en action !
À noter que les commentaires de style "error" ou "warning" ne sont pas listés par ce plugin puisque le compilateur le fera au moment de la compilation

.
Mais il reste une dernière chose : les options de ce plugin ! Allez dans "Settings -> Environment -> To-Do List" et voilà. Là vous aurez la possibilité de choisir si les notes doivent être rafraîchies automatiquement ou bien encore si la fenêtre "To-Do List" doit être intégrée aux onglets du menu "Messages" (personnellement je préfère cela parce que ça prend moins de place).
Koders query
Peut-être avez-vous déjà entendu entendu parler du moteur de recherche
Koders ? Non ?
Eh bien, je vais vous expliquer le principe : il permet de rechercher quasiment n'importe quel code (open source) dans lequel il y a un exemple d'utilisation d'une fonction que vous ne connaissez pas. Alors bien sûr ce n'est pas le remède miracle et y on trouve souvent des codes inutiles mais cela peut servir de temps en temps (faites-moi confiance, j'y ai moi-même déjà eu recours

).
Alors que fait ce plugin ? Eh bien il est permet de lancer une recherche sur ce site mais à partir de Code::Blocks. Alors, oui, ça n'a rien de bien révolutionnaire mais c'est quand même utile notamment grâce au fait que tout ce que vous avez sélectionné sur votre code sera intégré dans la recherche.
Exemple : Vous surlignez une fonction qui se trouve dans votre code, alors vous faites "Clique-droit -> Search at Koders" et voilà ! La fonction surlignée est déjà dans la recherche, vous n'avez plus qu'à spécifier le langage (informatique hein, pas votre langue

), la licence désirée et c'est parti !
Manager ses plugins
Bon, je le dis tout de suite : cette partie est sans intérêt... toutefois si je l'ai faite c'est juste histoire de vous montrer comment supprimer ou ajouter des plugins mais généralement vous n'aurez pas à faire cela (sauf si à la limite vous créez votre propre plugin).
Le panneau permettant donc tout cela se trouve à cet endroit : "Plugins -> Manage plugins...". Vous obtiendrez un panneau de ce style :
Comme vous pourrez le constater par vous-même, il y a une ribambelle de plugins installés ! Alors quelles sont les actions que l'on peut effectuer sur les plugins ? Eh bien il y a la possibilité de les activer/désactiver, en installer/désinstaller et enfin les exporter.
Pas besoin de vous expliquer comment vous servir des boutons c'est enfantin...
Sachez seulement que vous pourrez télécharger des plugins depuis
le forum de Code::Blocks et que ceux-ci seront livrés sous forme de fichier "*.cbplugin" à installer par le biais du bouton "Install New" dans le panneau présenté ci-dessus.
Et voilà c'est tout, c'était pas bien long hein

?
Naaaan !!!! C'est fini

?
Eh oui, c'est vrai que j'ai fait un peu léger au niveau du nombre de plugins présentés mais je ne tenais pas à m'éterniser sur cela... je vous ai donc présenté
tout ce qui est inutile ce qui me paraissait être le plus utilisé. Toutefois, je n'hésiterais pas à en rajouter si un autre plugin me semble intéressant à présenter.
Et voilà, c'est déjà la fin. À la prochaine

.
PS : Je n'ai pas jugé utile de mettre un QCM...
Et voilà que cette première partie se clôture. Le dernier chapitre aura mis du temps à sortir mais j'y suis finalement arrivé

.
Concernant la deuxième partie nous aborderons certaines options avancées de vos projets (la gestion du compilateur, etc...) et nous verrons peut-être la gestion des scripts dans Code::Blocks (si je juge cela suffisamment intéressant).
Voilà, vous savez à quoi vous attendre maintenant

.
Le tutoriel n'est pas encore terminé mais j'y travaille. En attendant, vous pouvez toujours essayer de tester les nouvelles fonctionnalités que vous y avez découvert

.
À bientôt.
PS : Laissez donc un commentaire, ça fait toujours plaisir à lire

.