Developpez.com

Club des développeurs et IT pro
Plus de 4 millions de visiteurs uniques par mois

Developpez.com - C
X

Choisissez d'abord la catégorieensuite la rubrique :


C File Gen - Documentation

cfg-logo

Date de publication : 05/08/2008

Par Franck Hecht (retour aux articles)
 


I. Présentation
II. La fenêtre principale
III. La fenêtre des préférences
III-A. L'onglet : Informations sur l'auteur et le projet
III-B. L'onglet : Fichiers de mise en page
IV. Liste des balises prises en charge par le programme
V. Exemple d'un fichier de gabarit avec des balises
VI. Suggestions, questions, messages, ...


I. Présentation

C File Gen (CFG pour son diminutif), est un générateur de fichiers C (genre de templates) avec toute l'organisation selon vos goûts, licence, en-tête de projet, etc...

Voici ce qu'il est capable de faire (avec les fichiers de gabarit par défaut) :
Un fichier source (*.c)
/*
 * This file is part of CFG.
 * Copyright (C) 2008 by HECHT Franck
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

/* --------------------------------------------------------------------------

             CFG

   --------------------------------------------------------------------------
   File     :  test

   Author   :  HECHT Franck - (C) 2008
   Mail     :  franhec@gmail.com
   Creation :  05/08/2008 14:20:41

   Desc     :  Short desctiption of this module.
   --------------------------------------------------------------------------
   Last modifications:
   -------------------------------------------------------------------------- */


#ifdef __cplusplus
#error This source file is not C++ but rather C. Please use a C-compiler
#endif


#include "test.h"


/* macros =================================================================== */
/* constants ================================================================ */
/* types ==================================================================== */
/* structures =============================================================== */
/* private variables ======================================================== */
/* private functions ======================================================== */
/* internal public functions ================================================ */
/* entry points ============================================================= */
/* public variables ========================================================= */


/* --------------------------------------------------------------------------
   File generated with: C File Gen (Alpha) v0.1.0 - by HECHT Franck (C) 2008
   -------------------------------------------------------------------------- */
Le fichier associé d'en-tête (*.h)
/*
 * This file is part of CFG.
 * Copyright (C) 2008 by HECHT Franck
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

/* --------------------------------------------------------------------------

             CFG

   --------------------------------------------------------------------------
   File     :  test

   Author   :  HECHT Franck - (C) 2008
   Mail     :  franhec@gmail.com
   Creation :  05/08/2008 14:20:41

   Desc     :  Short desctiption of this module.
   --------------------------------------------------------------------------
   Last modifications:
   -------------------------------------------------------------------------- */


#ifndef H_HF_TEST_5820081420
#define H_HF_TEST_5820081420


#ifdef __cplusplus
extern "C" {
#endif


/* macros =================================================================== */
/* constants ================================================================ */
/* types ==================================================================== */
/* structures =============================================================== */
/* internal public functions ================================================ */
/* entry points ============================================================= */
/* public variables ========================================================= */


#ifdef __cplusplus
}
#endif


#endif


/* --------------------------------------------------------------------------
   File generated with: C File Gen (Alpha) v0.1.0 - by HECHT Franck (C) 2008
   -------------------------------------------------------------------------- */
Le but: dans vos projets, lorsque vous ajoutez des fichiers supplémentaires, il faut moins d'une seconde à CFG pour les créer selon vos critères de présentation, plus besoin de faire tout ce fastidieux travail à la main !

Ce document ne se veut pas être un tutoriel expliquant pas à pas comment utiliser ce programme, ca ne reste qu'une modeste documentation mais le programme est tellement simple à utiliser que sa prise en main ne demande que quelques minutes.

Au travers des chapitres qui vont suivre, nous allons voir l'ensemble des options et des fonctionnalités du programme, fenêtre par fenêtre.


II. La fenêtre principale

Lorsque vous lancez CFG, vous obtenez la fenêtre suivante:

cfg-001.jpg
On peut remarquer la sobriété de l'interface. Celle-ci a en effet été épurée au maximum. En-dessous de la première zone de saisie, on peut aperçevoir l'option Options de génération C++.

En cliquant sur ce titre ou sur la flèche à sa gauche, on fait étendre la fenêtre du programme et on affiche ce groupe d'options.

Cette fenêtre se décompose donc en trois parties :

cfg-002.jpg
  1. Cette zone de texte est en fait l'endroit où l'on renseigne le nom des fichiers à générer, chaque nom séparé par un espace. Pour lancer la génération, vous pouvez au choix cliquer sur le bouton Valider au bas de la fenêtre ou bien après la saisie, taper sur Entrée.
  2. Ce groupe d'options permet de faire en sorte que la compilation de ce fichiers soit possible ou non par un compilateur C++. En d'autre termes, si par exemple vous sélectionnez l'option "Ne pas autoriser la compilation avec un compilateur C++", dans les fichiers sources générés, vous trouverez ceci en plus en début de code :
    #ifdef __cplusplus
    #error This source file is not C++ but rather C. Please use a C-compiler
    #endif
    
    info Le message d'erreur dépend de ce que vous mettez dans la zone de texte "Message d'erreur affiché par le compilateur"
  3. La dernière partie cette fenêtre principale n'est autre que les boutons de commandes permettant d'accéder aux autres parties du programme ou de lancer la génération !

III. La fenêtre des préférences

C'est dans cette seule fenêtre que se configure tout le programme, c'est également ici que vous pouvez changer les fichiers de gabarits par les votre ! Voyons les différents onglets en détails.


III-A. L'onglet : Informations sur l'auteur et le projet

cfg-003.jpg
Dans cette section vous renseignez les champs avec les divers données sur le projet et son auteur :

Intitulé Description
Nom Le nom et prénom (ou pseudo) de l'auteur
Initiales Les initiales de l'auteur
Mail L'adresse mail de l'auteur
Site internet L'adresse du site internet de l'auteur
Copyright Le message correspondant au copyright de votre projet
Nom du programme Le nom complet du projet
info Si vous ne désirez pas renseigner certains champs, vous pouvez les laisser vide.

III-B. L'onglet : Fichiers de mise en page

cfg-004.jpg
Dans cet onglet, vous pouvez choisir l'endroit où doivent êtres générés les fichiers et plus important encore, c'est ici que vous pouvez choisir vos fichiers de gabarit !

Dans la première partie de cet onglet intitulée "Chemin de destination pour les fichiers à générer", vous choisissez l'endroit où les fichiers seront générés, cela peut être dans le répertoire par défaut du programme à savoir "/share/generated_files" ou directement dans le répertoire de votre projet en cours.

Voici la seconde partie "Fichiers de mise en page" qui correspond aux fichiers de gabarit :

Intitulé Description
Licence du programme Permet de choisir le fichier de gabarit contenant le texte de licence de votre projet.
En-tête des fichiers Ceci correspond en fait à l'en-tête de vos fichiers sources et leur header associés. Cet encart permet de renseigner la date et heure de génération, le nom de l'auteur, du fichier, du programme, etc...
Organisation des fichiers sources Ici vous choisissez le gabarit correspondant au type d'organisation des fichiers sources que vous désirez.
Organisation des fichiers d'en-tête Ici vous choisissez le gabarit correspondant au type d'organisation des fichiers d'en-tête que vous désirez.
info Vous pouvez remarquer que pour chaque type de gabarit est associé une case à cocher, celles-ci vous permettrons d'inclure ou d'exclure différentes partie du gabarit lors de la génération des fichiers.
info Les fichiers par défaut se trouvent dans le répertoire d'installation du programme soit : /share/config/files

IV. Liste des balises prises en charge par le programme

Voici la liste des balises prises en charge par CFG :

Intitulé Description
<date/> Date complète (au format local) avec l'heure
<year/> Année en cours
<month/> Mois en cours
<day/> Jour en cours
<hours/> Heure
<min/> Minutes
<author/> Nom de l'auteur
<initials/> Initiales de l'auteur
<copy/> Le copyright de l'auteur
<mail/> L'adresse mail de l'auteur
<site/> L'adresse du site internet de l'auteur
<file/> Le nom du fichier
<project/> Le nom du projet

V. Exemple d'un fichier de gabarit avec des balises

Voici un exemple d'un fichier de gabarit dans lequel se trouve des balises :
/* --------------------------------------------------------------------------

             <project/>

   --------------------------------------------------------------------------
   File     :  <file/>

   Author   :  <author/> - <copy/>
   Mail     :  <mail/>
   Creation :  <date/>

   Desc     :  Short desctiption of this module.
   --------------------------------------------------------------------------
   Last modifications:
   -------------------------------------------------------------------------- */

VI. Suggestions, questions, messages, ...

Si vous avez des questions, suggestions d'évolution ou simpelement un message à m'adresser, vous pouvez me contacter soit par Message privé sur developpez.com ou par mail à l'adresse: franhec@gmail.com

Merci !



Valid XHTML 1.1!Valid CSS!

Copyright © 2008 Franck Hecht. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Contacter le responsable de la rubrique C