Projet mkd

De Wiki EELL.

(Différences entre les versions)
m (ÉVOLUTION DU PROJET: : !)
m (mkd)
 
(42 versions intermédiaires masquées)
Ligne 1 : Ligne 1 :
-
<small>[[Portail:mkd|Retour au portail mkd &rarr;]]</small>
+
{{Modèle:mkd}}
 +
<small>[[Portail:mkd|Retour au portail mkd]]</small><br/>  
-
'''Dossier extractdoc 04/12/2009'''
+
'''Dossier extractdoc du 04/12/2009 mis à jour 05/04/2012'''
-
==A QUOI SERT MKD ET SES DÉRIVÉS ? ==
+
<big>''' A QUOI SERVENT MKD ET SES DÉRIVÉS ?''' </big>
-
'''mkd''' pour consoles ou terminaux sert essentiellement à l'installation de logiciels.<br> '''mkd''' génère automatiquement la documentation ou/et le manuel qui correspondent exactement aux fichiers actualisés du logiciel.<br>
+
-
On se sert également de cette application dans les [[:wikipedia:fr:Make|''''Makefile'''']] de compilation des modules d'un projet : '''mkd''' extrait les fichiers d'entête des fonctions mises à jour.<br>
+
-
'''mkdcpp''' est une version restreinte de mkd aux langages du style c++, C , c++, php.<br>
+
-
'''mkdasm''' est une version restreinte de mkd aux langages de type assembleur.<br>
+
-
Ces deux dernières applications ont été réalisées pour effectuer des tests sur les modules cpp et asm.
+
-
Elles n'ont pas été prévues pour être utilisées comme mkd qui est la seule application réellement intéressante dans les projets.
+
-
Le fenêtrage est à la mode. Des versions fenêtrées, <u>non intégrables aux fichiers d'installation</u> [[wikipedia:fr:Installation_(informatique)|''''install'''']] et ''''Makefile'''' sont en cours d'écriture à titre expérimental. En janvier 2012 [[Utilisateur:JClara|Clara]] nous a proposé l'application expérimentale '''mkdcppw''' qui est la version fenêtrée de mkdcpp.
+
: '''mkd''' pour [[wikipedia:fr:Terminal_informatique#Console|consoles]] ou [[wikipedia:fr:Terminal_informatique|terminaux]] sert essentiellement aux programmeurs et à la [[wikipedia:fr:Maintenance_du_logiciel|maintenance]]. Il est utilisé à tous les niveaux du [[wikipedia:fr:Cycle_en_V|cycle de vie en V des logiciels]], de la conception à la génération des documents destinés aux utilisateurs.
-
==DROIT DE COPIE:==
+
== Généralités ==
 +
=== mkd ===
 +
* '''Avec la version ''mkd-12.03'' l'application est internationalisée (multilingue) et prend en charge des caractères UTF-8'''
 +
* Cet utilitaire est aussi simple d'utilisation que '''''dir''''', '''''make''''', '''touch''' ou '''''grep'''''.
 +
* Comme tous ces utilitaires, il s'installe dans le répertoire d'accès rapide '''''/usr/bin'''''.
-
<!-- © Jean-Paul LOUYOT contact: http://jeanpaullouyot.free.fr/-->
+
On se sert souvent de cette application pour [[wikipedia:fr:Installation_(informatique)|installer]] des logiciels, et dans le  [[:wikipedia:fr:Make|Makefile]] de compilation d'un projet.<br>
 +
*'''mkd''' génère automatiquement la documentation et le manuel qui correspondent exactement aux fichiers actualisés.
 +
*'''mkd''' extrait les fichiers d'entête des fonctions mises à jour pour créer une documentation complète des fonctions d'un projet.<br>
-
© EELL, Éditeurs Européens de Logiciels Libres, 20074<br/>
+
=== Dérivés de mkd ===
-
Contact: JPL [http://edeulo.free.fr/index.php EELL]
+
-
Concédée sous licence EUPL, version 1.1 ou – dès leur approbation par la Commission européenne - versions ultérieures de l’EUPL (la «Licence»).
+
==== En ligne de commande ou intégrés dans les fichiers de commandes ====
-
Vous ne pouvez utiliser la présente œuvre que conformément à la Licence.
+
-
Vous pouvez obtenir une copie de la Licence à l’adresse suivante:
+
-
http://ec.europa.eu/idabc/eupl5 ou sur ce site en version française [http://edeulo.free.fr/documents/EUPL%28licence%29FR.pdf Licence EUPL V1.1]
+
* '''mkdcpp''' est une version restreinte de mkd aux langages du style C , c++, php.
-
Sauf obligation légale ou contractuelle écrite, le logiciel distribué sous la Licence est distribué «en l’état»,
+
* '''mkdasm''' est une version restreinte de mkd aux langages de type assembleur.
-
SANS GARANTIES OU CONDITIONS QUELLES QU’ELLES SOIENT, expresses ou implicites.
+
 
-
Consultez la Licence pour les autorisations et les restrictions linguistiques spécifiques relevant de la Licence.
+
: ''Ces deux applications ont été réalisées pour effectuer des '''tests''' sur les modules cpp et asm. <br>Elles n'ont pas été prévues pour être utilisées comme mkd qui est la seule application réellement intéressante dans les projets.''
 +
 
 +
==== mkdcppw expérimental ====
 +
 
 +
*'''mkdcppw''' : Version fenêtrée de mkdcpp, plus complète, prélude à '''mkdw''' version graphique fenêtrée de mkd.
 +
: mkdcppw est disponible en version beta depuis le 10 avril 2012.
 +
 
 +
=== Nouveautés ===
 +
 
 +
* [[Nouveautés_annuelles|mkd, mkdcppw, et publications]]
-
==LE PROJET:==
+
== Le projet ==
Ce projet reprend tout ou partie du projet '''MakeDoc''' (ou mkdoc ou encore mkd) de l'ex '''Centre d'Electronique de Montpellier, Université Montpellier II'''
Ce projet reprend tout ou partie du projet '''MakeDoc''' (ou mkdoc ou encore mkd) de l'ex '''Centre d'Electronique de Montpellier, Université Montpellier II'''
Ligne 37 : Ligne 44 :
''Ce logiciel doit évidemment, vu sa conception sous logiciel libre, rester libre de droit, gratuit, et ne peut en aucun cas faire l'objet d'une prise de brevet, d'une transaction ou d'une copie dans un but commercial, cependant le "copyleft" est autorisé et bienvenu.''
''Ce logiciel doit évidemment, vu sa conception sous logiciel libre, rester libre de droit, gratuit, et ne peut en aucun cas faire l'objet d'une prise de brevet, d'une transaction ou d'une copie dans un but commercial, cependant le "copyleft" est autorisé et bienvenu.''
-
Son but est d'être polyvalent, aussi universel que possible. Il doit permettre de générer de multiples documents à partir de commentaires précodés dans des fichiers de sources eux aussi multiples. (par exemple: des compilation avec des fichiers cpp + assembleur + fichiers texte etc.).
+
Son but est d'être polyvalent, aussi universel que possible. Il doit permettre de générer de multiples documents à partir de commentaires précodés dans des fichiers de sources eux aussi multiples. (par exemple: des compilation avec des fichiers cpp + assembleur + fichiers texte etc.)<ref name=commentaires_informatiques>[[:wikipedia:fr:Commentaire_(informatique)|Styles de commentaires informatiques]]</ref>.
 +
 
Les documents habituels sont:
Les documents habituels sont:
Ligne 47 : Ligne 55 :
L'extraction permet en un tour de main, d'assurer le contrôle rapide et la mise à jour de l'ensemble des documents précités.
L'extraction permet en un tour de main, d'assurer le contrôle rapide et la mise à jour de l'ensemble des documents précités.
-
==LE NOM:==
+
== Le nom ==
Le nom choisi est '''mkd''' par le fait qu'en 2010 les noms mkdoc, makeDoc et makeDocu ont, entre temps, été pris par d'autres logiciels.
Le nom choisi est '''mkd''' par le fait qu'en 2010 les noms mkdoc, makeDoc et makeDocu ont, entre temps, été pris par d'autres logiciels.
Ligne 62 : Ligne 70 :
Une application fenêtrée de mkdcpp (mkdcppw) en cependant en cours d'évaluation.
Une application fenêtrée de mkdcpp (mkdcppw) en cependant en cours d'évaluation.
-
==LA COMPILATION, LES PLATEFORMES:==
+
== La compilation, les plateformes ==
La compilation devra être validée sous WINDOWS et sous UNIX/LINUX, voire sous MAC pour les processeurs 32 et 64 bits. La version 16 bits devra être préservée et pourra être mise à jour.
La compilation devra être validée sous WINDOWS et sous UNIX/LINUX, voire sous MAC pour les processeurs 32 et 64 bits. La version 16 bits devra être préservée et pourra être mise à jour.
Ligne 78 : Ligne 86 :
on introduira un nouveau code de commande pour remplacer l'option de compilation FULL_LINE (si nécessaire).
on introduira un nouveau code de commande pour remplacer l'option de compilation FULL_LINE (si nécessaire).
-
Lignes de commande console du programme exécutable:
+
<u>'''Lignes de commande console des programmes exécutables:'''</u>
-
  Ligne de commandes traditionnelle:
+
<!--pre style="font-family:monospace;
-
   mkd [--Options] [-5 caractères à décoder] fichier_source [fichier_destinataire]<br/>
+
font-size:0.95em;
-
  Lignes de commandes spéciales:
+
width: 95%;
-
   mkdxx..xx [--Options] [-5 caractères max à décoder] fichier_source [fichier_destinataire]
+
border:blue 2px solid;
-
   où l'option 'f' n'a pas de sens.<br/>
+
color:blue;
-
  ''Par défaut le <u>'''fichier_destinataire'''</u> prendra le nom du fichier source suivi de l'extension .txt''
+
background-color:white;"-->
 +
<pre style="white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word;overflow:auto; ">
 +
Ligne de commandes traditionnelle:
 +
   mkd [--Options] [-5 caractères à décoder] fichier_source [fichier_cible]
 +
 
 +
Lignes de commandes spéciales:
 +
   mkdxx..xx [--Options] [-5 caractères max à décoder] fichier_source [fichier_cible]
 +
   où l'option 'f' peut ne pas avoir de sens.
 +
 
 +
Par défaut le fichier_cible prendra le nom du fichier source suivi de l'extension prédéfinie .doc ou .txt; l'extension des fichiers de projets sera .prj ou .pj
 +
</pre>
<u>'''Options:'''</u> a, f, j, n, s, t, v, w, langage à décoder<br/>
<u>'''Options:'''</u> a, f, j, n, s, t, v, w, langage à décoder<br/>
-
  a, f, j, v, w sont des options particulières au module de commande (main mkd)
+
<pre style="white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word;overflow:auto; ">
-
  n, s, t sont des options destinées aux modules (asm_, cpp_, fortran_, etc.)<br/>
+
a, f, j, v, w sont des options particulières au module de commande (main mkd)
-
    a, ajouter à un fichier destinataire (append)
+
-
    f, trouver le style de commentaire à décoder en fonction de son extension (find), pourra être
+
-
      affiné par un recherche à l'intérieur des fichiers.
+
-
    j, le fichier source est un fichier de projet, se combine avec l'optiopn 'f' s'il composé de
+
-
      fichiers sources différents.
+
-
    n, fait précéder le commentaire du numéro de ligne sur les premières colonnes.
+
-
    s, ajouter les commentaires décodés à l'écran. (Permet parfois des ajouts SHELL avec les
+
-
      redirections > et >>).
+
-
    t, ne copie que le texte. (copy text only) contrarie certaines options contrariantes comme le
+
-
      mode bavard dans l'écriture de la documentation.
+
-
    v, mode bavard (verbose)
+
-
    w, crée ou recrée le fichier destinataire de même nom (overwrite)<br/>
+
-
    '''langage à décoder:'''
+
-
    exemples : C pour style C, (C++ ou PHP), F pour style FORTRAN, P pour style PASCAL, etc.
+
-
    Le style des langages compilés devra être précisé par la commande mkd --help --? ou dans la
+
-
    documentation utilisateur mkd.1 sous UNIX/LINUX
+
-
<u>'''Caractères à décoder:'''</u><br/>
+
n, s, t sont des options destinées aux modules (asm_, cpp_, fortran_, etc.)
-
Tous caractères alphanumériques et caractères spéciaux ** (''5 caractères maximum'')
+
 
 +
a, ajouter à un fichier destinataire (append)
 +
 
 +
f, trouver le style de commentaire à décoder en fonction de son extension (find), pourra être affiné par un recherche à l'intérieur des fichiers.
 +
 
 +
j, le fichier source est un fichier de projet, se combine avec l'optiopn 'f' s'il composé de fichiers sources différents.
 +
 
 +
n, fait précéder le commentaire du numéro de ligne sur les premières colonnes.
 +
 
 +
s, ajouter les commentaires décodés à la sortie standard (l'écran le plus souvent). Ceci permet parfois des ajouts ou des filtres SHELL avec les redirections > et >>).
 +
 
 +
t, ne copie que le texte. (copy text only) contrarie certaines options comme le mode bavard dans l'écriture de la documentation.
 +
 
 +
v, mode bavard (verbose)
 +
 
 +
w, crée ou recrée le fichier destinataire de même nom (overwrite)<br/>
 +
</pre>
 +
 
 +
<u>'''langages à décoder:'''</u>
 +
<pre style="white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word;overflow:auto; ">
 +
exemples :
 +
C pour style C, (C++ ou PHP),
 +
F pour style FORTRAN 77,
 +
P pour style PASCAL, etc.
 +
 
 +
Le style des langages compilés devra être précisé par la commande mkd --help --? ou dans la documentation utilisateur mkd.1 sous UNIX/LINUX
 +
</pre>
 +
 
 +
<u>'''Caractères repères d'extraction (décodage):'''</u><br/>
 +
Tous caractères alphanumériques ASCII et caractères spéciaux '**' (''5 caractères maximum'')
 +
 
 +
== Le droit de copie ==
 +
 
 +
<!-- © Jean-Paul LOUYOT contact: http://jeanpaullouyot.free.fr/-->
 +
 
 +
© EELL, Éditeurs Européens de Logiciels Libres, 20074<br/>
 +
Contact: JPL [http://edeulo.free.fr/index.php EELL]
 +
 
 +
Concédée sous licence EUPL, version 1.1 ou – dès leur approbation par la Commission européenne - versions ultérieures de l’EUPL (la «Licence»).
 +
Vous ne pouvez utiliser la présente œuvre que conformément à la Licence.
 +
Vous pouvez obtenir une copie de la Licence à l’adresse suivante:
 +
 
 +
http://ec.europa.eu/idabc/eupl5 ou sur ce site en version française [http://edeulo.free.fr/documents/EUPL%28licence%29FR.pdf Licence EUPL V1.1]
 +
 
 +
Sauf obligation légale ou contractuelle écrite, le logiciel distribué sous la Licence est distribué «en l’état»,
 +
SANS GARANTIES OU CONDITIONS QUELLES QU’ELLES SOIENT, expresses ou implicites.
 +
Consultez la Licence pour les autorisations et les restrictions linguistiques spécifiques relevant de la Licence.
-
==ÉVOLUTION DU PROJET:==
+
== Évolution du projet ==
Les bases précisées dans ce document sont susceptibles d'évoluer en fonction des besoins des programmeurs ou autres professions intéressées.
Les bases précisées dans ce document sont susceptibles d'évoluer en fonction des besoins des programmeurs ou autres professions intéressées.
Ligne 121 : Ligne 169 :
Les documents, aujourd'hui peuvent être écrits dans des langues très différentes et les codes utf8 ne suffisent pas. Il faut envisager de revoir nos souces. Cette question est d'actualité !
Les documents, aujourd'hui peuvent être écrits dans des langues très différentes et les codes utf8 ne suffisent pas. Il faut envisager de revoir nos souces. Cette question est d'actualité !
-
== exemple de manuel généré par mkd ==
+
== Exemple de manuel généré par mkd jusqu'en 2012 ==
-
+
-
MKD(1)                                                                  MKD(1)
+
 +
''Après 2012, les manuels ont été traduits. Il devenait difficile de les intégrer dans le fichier d'entête version.h''
 +
''Voir : [[Projet_mkd/Fichiers_en_développement|Fichiers en développement]]''
-
  NAME
+
{{Boîte déroulante/début|titre=MKD(1) (fr)}}
 +
  ''' MKD(1)                                                                  MKD(1)'''<br><br><br>
 +
'''NAME'''
       mkd  -  make  documentation.  Extrait des informations codées dans les
       mkd  -  make  documentation.  Extrait des informations codées dans les
-
       programmes sources, et produit une documentation spécifique.
+
       programmes sources, et produit une documentation spécifique.<br><br>
-
 
+
  '''SYNOPSIS'''
-
  SYNOPSIS
+
       mkd [-ABCFPSafjlpstw] <u>codes</u> <u>chemin_source</u> [chemin_cible]<br><br>
-
       mkd [-ABCFPSafjlpstw] codes chemin_source [chemin_cible]
+
  '''DESCRIPTION'''
-
 
+
       <u>mkd</u>   Des commentaires sélectionnes (ou tous  les  commentaires)  sont
-
  DESCRIPTION
+
-
       mkd    Des commentaires sélectionnes (ou tous  les  commentaires)  sont
+
               extraits des programmes sources: 'chemin_source', et sont copiés
               extraits des programmes sources: 'chemin_source', et sont copiés
               dans un fichier documentaire: 'chemin_cible', afin  de  produire
               dans un fichier documentaire: 'chemin_cible', afin  de  produire
Ligne 143 : Ligne 191 :
               Test et 'warnings' .... Les  codes  de  sélection  peuvent  être
               Test et 'warnings' .... Les  codes  de  sélection  peuvent  être
               respectivement  'O',  'S',  'P',  'T'  et  'www'  juste après le
               respectivement  'O',  'S',  'P',  'T'  et  'www'  juste après le
-
               caractère début de commentaire.
+
               caractère début de commentaire.<br>
-
 
+
       <u>codes</u> Les commentaires commençant par ces caractères sont extraits  du
-
       codes  Les commentaires commençant par ces caractères sont extraits  du
+
               programme  source  et sont ajoutés au fichier documentaire. Tous
               programme  source  et sont ajoutés au fichier documentaire. Tous
               les caractères ASCII peuvent servir a  coder  les  commentaires,
               les caractères ASCII peuvent servir a  coder  les  commentaires,
Ligne 151 : Ligne 198 :
               sauf w pour 'warning'. Avec deux étoiles en paramètre codes, mkd
               sauf w pour 'warning'. Avec deux étoiles en paramètre codes, mkd
               extrait  tous  les  commentaires.  (Voir  aussi  option t et les
               extrait  tous  les  commentaires.  (Voir  aussi  option t et les
-
               exemples).
+
               exemples).<br>
-
 
+
       <u>chemin_source</u>
-
       chemin_source
+
               Chemin du fichier source (ou fichier projet: option j)<br>
-
               Chemin du fichier source (ou fichier projet: option j)
+
       <u>chemin_cible</u>
-
 
+
-
       path_target
+
               Chemin du fichier documentaire. Par défaut chemin_cible est  une
               Chemin du fichier documentaire. Par défaut chemin_cible est  une
               copie  de  chemin_source  auquel  on  remplace le suffixe par le
               copie  de  chemin_source  auquel  on  remplace le suffixe par le
-
               suffixe ´.doc´.
+
               suffixe ´.doc´.<br><br>
-
 
+
  '''OPTIONS'''
-
  OPTIONS
+
       <u>Options en majuscules:</u>
-
       Options en majuscules:
+
               Restreind l'extraction des commentaires a un style de langage:<br>
-
               Restreind l'extraction des commentaires a un style de langage:
+
       -A    extrait le style Assembleur (  ;    -> fin de ligne)<br>
-
 
+
       -B    style Basic                (REM ou ' -> fin de ligne)<br>
-
       -A    extrait le style Assembleur (  ;    -> fin de ligne)
+
       -C    style C                    (  / *    ->      * /    )<br>
-
 
+
       -F    style Fortran              (c,C ou * -> fin de ligne)<br>
-
       -B    style Basic                (REM ou ' -> fin de ligne)
+
       -P    style Pascal              (  {    ->      }    )<br>
-
 
+
       -S    style Shell ou ratfor      (  #    -> fin de ligne)<br>
-
       -C    style C                    (  / *    ->      * /    )
+
       <u>options en minuscules:</u><br>
-
 
+
-
       -F    style Fortran              (c,C ou * -> fin de ligne)
+
-
 
+
-
       -P    style Pascal              (  {    ->      }    )
+
-
 
+
-
       -S    style Shell ou ratfor      (  #    -> fin de ligne)
+
-
 
+
-
       options en minuscules:
+
-
 
+
       -a    (append)  Ajoute  a  la  suite  du  fichier  documentaire
       -a    (append)  Ajoute  a  la  suite  du  fichier  documentaire
-
               ´chemin_cible´.
+
               ´chemin_cible´.<br>
-
 
+
       -f    (find)  Trouve  le  langage  du  fichier  source  par analyse du
       -f    (find)  Trouve  le  langage  du  fichier  source  par analyse du
-
               suffixe. (s´utilise généralement avec un fichier projet)
+
               suffixe. (s´utilise généralement avec un fichier projet)<br>
-
 
+
       -j    (project) S´utilise avec un fichier projet composé de sources en
       -j    (project) S´utilise avec un fichier projet composé de sources en
-
               langages différents.
+
               langages différents.<br>
-
 
+
       -l    (lignes) Extrait les lignes commençant par les caractères CD1 ou
       -l    (lignes) Extrait les lignes commençant par les caractères CD1 ou
               CD2 ou CD3 et suivis par un des caractères codes, le commentaire
               CD2 ou CD3 et suivis par un des caractères codes, le commentaire
Ligne 194 : Ligne 227 :
               placé  en  milieu  de  ligne. CD1, CD2, CD3, sont des options de
               placé  en  milieu  de  ligne. CD1, CD2, CD3, sont des options de
               compilation dans le fichier version.h de la distribution  source
               compilation dans le fichier version.h de la distribution  source
-
               de mkd.
+
               de mkd.<br>
-
 
+
       -p    (page) Extrait le texte débutant par le caractère CD4 suivi d´un
       -p    (page) Extrait le texte débutant par le caractère CD4 suivi d´un
               des caractères codes, l'extraction  du  commentaire  se  termine
               des caractères codes, l'extraction  du  commentaire  se  termine
               avec la lecture du caractère CD5. CD4 et CD5 sont des options de
               avec la lecture du caractère CD5. CD4 et CD5 sont des options de
               compilation dans le fichier version.h de la distribution  source
               compilation dans le fichier version.h de la distribution  source
-
               de mkd.
+
               de mkd.<br>
-
 
+
       -s    (screen  verbose)  Duplique  les  commentaires  extraits  sur la
       -s    (screen  verbose)  Duplique  les  commentaires  extraits  sur la
-
               sortie standard.
+
               sortie standard.<br>
-
 
+
       -t    (text) Ne copie que le commentaire.<br>
-
       -t    (text) Ne copie que le commentaire.
+
       -w    (overwrite) Réécrit le fichier documentaire.<br><br>
-
 
+
  '''EXEMPLES'''
-
       -w    (overwrite) Réécrit le fichier documentaire.
+
       <u>avec une commande Cshell :</u><br>
-
 
+
-
  EXEMPLES
+
-
       avec une commande Cshell :
+
-
 
+
       mkd -Ct F manual mkd.1 | gzip -f mkd.1.gz
       mkd -Ct F manual mkd.1 | gzip -f mkd.1.gz
               (Produit un manuel UNIX en francais. au format UTF-8  depuis  la
               (Produit un manuel UNIX en francais. au format UTF-8  depuis  la
               version  12.03)  C: pour décoder le fichier en langage C, s:avec
               version  12.03)  C: pour décoder le fichier en langage C, s:avec
               visualisation à  l´  écran,  t:ne  copier  que  le  commentaire,
               visualisation à  l´  écran,  t:ne  copier  que  le  commentaire,
-
               F:sélectionner les commentaires debutants par F.
+
               F:sélectionner les commentaires debutants par F.<br>
-
 
+
       mkd -Ct M manual mkd.1 | gzip -f mkd.1.gz
       mkd -Ct M manual mkd.1 | gzip -f mkd.1.gz
               (Produit  un  manuel  UNIX  standard  en anglais au format UTF-8
               (Produit  un  manuel  UNIX  standard  en anglais au format UTF-8
-
               depuis la version 12.03)
+
               depuis la version 12.03)<br>
-
 
+
       mkd -Csl '*Sied' mkd3.c  '*.verif_struct'
       mkd -Csl '*Sied' mkd3.c  '*.verif_struct'
               (avec les options de compilation CD1 ou CD2 = '#',  produit  une
               (avec les options de compilation CD1 ou CD2 = '#',  produit  une
Ligne 229 : Ligne 254 :
               commentaires style C, s:vérifier à l'écran, l:décoder  egalement
               commentaires style C, s:vérifier à l'écran, l:décoder  egalement
               des  lignes  commencant  par les caractères CD1 ou CD2 ou CD3 et
               des  lignes  commencant  par les caractères CD1 ou CD2 ou CD3 et
-
               suivis des char_codes:*Sied.
+
               suivis des char_codes:*Sied.<br>
-
 
+
       mkd -jfsl '*OHie' mkd_docu.prj mkd.org
       mkd -jfsl '*OHie' mkd_docu.prj mkd.org
               (avec les options de compilation CD1 ou CD2 =  '#',  produit  un
               (avec les options de compilation CD1 ou CD2 =  '#',  produit  un
Ligne 236 : Ligne 260 :
               fichiers source sont décrits dans le fichier projet.)  f:trouver
               fichiers source sont décrits dans le fichier projet.)  f:trouver
               le  style  de langage, j:le fichier source est un fichier projet
               le  style  de langage, j:le fichier source est un fichier projet
-
               qui contient la liste des fichiers a documenter.
+
               qui contient la liste des fichiers a documenter.<br>
-
 
+
       mkd -l '*ide' mkd3.c '*.id_ei'
       mkd -l '*ide' mkd3.c '*.id_ei'
               (avec les options de compilation CD1='#' ou CD2='#', décode  les
               (avec les options de compilation CD1='#' ou CD2='#', décode  les
               #includes,  #define,  #ifdef,  #else,  #endif  des  options  de
               #includes,  #define,  #ifdef,  #else,  #endif  des  options  de
-
               compilation en C ).
+
               compilation en C ).<br>
-
 
+
       mkd -pj '**' mkd_docu.prj mkd.strings
       mkd -pj '**' mkd_docu.prj mkd.strings
               (avec les  options  de  compilation  CD4=CD5=´\"´,  extrait  les
               (avec les  options  de  compilation  CD4=CD5=´\"´,  extrait  les
               chaînes  de  caractères  du  programme.  (les  commentaires sont
               chaînes  de  caractères  du  programme.  (les  commentaires sont
-
               transmis a la sortie standard).
+
               transmis a la sortie standard).<br>
-
 
+
       mkd (sans argument)
       mkd (sans argument)
               Génère une erreur et envoie la  syntaxe  au  terminal  avec  les
               Génère une erreur et envoie la  syntaxe  au  terminal  avec  les
-
               caractères compilés pour les options l et p.
+
               caractères compilés pour les options l et p.<br><br>
 +
'''AUTHOR'''
 +
      JP LOUYOT, Clara JIMENEZ<br>
 +
      http://edeulo.free.fr/wiki/index.php/Portail:mkd <br>
 +
'''NOTES'''
 +
      Cette  version  12.03.0  ne lit et ne décode pas les fichier inclus par
 +
      '#include' dans les sources.<br><br>
 +
'''BUGS'''
 +
      Bugs Report: http://edeulo.free.fr/phpBB3/viewforum.php?f=14 <br><br><br><br><br>
 +
                                29 Mars 2012                          MKD(1)
 +
{{Boîte déroulante/fin}}
-
  AUTHOR
+
{{Boîte déroulante/début|titre=MKD(1) (en)}}
-
       JP LOUYOT, Clara JIMENEZ
+
'''MKD(1)                                                                  MKD(1)'''<br><br><br>
 +
'''NAME'''
 +
      mkd  -  make  documentation.  Extract coded informations from programs
 +
      sources and product specific documentation.<br>
 +
'''SYNOPSIS'''
 +
      <u>mkd</u> [-ABCFPSafjlpstw] <u>char_codes</u> <u>path_source</u> [path_target]<br>
 +
'''DESCRIPTION'''
 +
      <u>mkd</u>
 +
              Selected comments (or all comments) are extracted from programs
 +
              sources and product specific documentation to target file. Usual
 +
              target files are  Organigrams,  or  Structure  of  programs,  or
 +
              comments  for  Programmers, Warnings and Tests points .... Coded
 +
              informations are respectively 'O', 'S', 'P', 'www', ant 'T' just
 +
              after the comment character.<br>
 +
      <u>char_codes</u>
 +
              All  ASCII.  The comment are extracted if the comment begin with
 +
              this character. With two star mkd extract all comments.<br>
 +
      <u>path_source</u>
 +
              Path source file (or project file: option j ).<br>
 +
      <u>path_target</u>
 +
              Path target file. Default, path target is  idendical  to  source
 +
              file with extension ´.doc´ .<br>
 +
'''OPTIONS'''
 +
      <u>Uppercase options:</u>
 +
              restrict comments to one specific language:<br>
 +
      -A    extract Assembler style comments ( ; to end of line )<br>
 +
      -B    Basic style                (REM or ' -> end of line)<br>
 +
      -C    C style                    (  / *    ->      * /  )<br>
 +
      -F    Fortran style              (c,C or * -> end of line)<br>
 +
      -P    Pascal style                (  {    ->      }    )<br>
 +
      -S    Shell or ratfor style      (  #    -> end of line)<br>
 +
      <u>Lowercase options:</u><br>
 +
      -a    append to current target file.<br>
 +
      -f    find source file language. (useful with project file)<br>
 +
      -j    used if source file is a project file.<br>
 +
      -l    lines  (extract lines delimited by CD1 or CD2 in first colomn or
 +
              CD3 in line, and next New-Line. CD1,  CD2,  CD3  are  compilable
 +
              options in version.h from mkd distribution)<br>
 +
      -p    page  (extract text delimited by CD4 and CD5 -begin with CD4 and
 +
              end with CD5-. CD4, CD5 are compilable options in version.h from
 +
              mkd distribution)<br>
 +
      -s    add to screen. (verbose)<br>
 +
      -t    text (copy only the comment).<br>
 +
      -w    overwrite the current target file.<br>
 +
'''EXAMPLES'''
 +
      <u>with Cshell command:</u><br>
 +
      mkd -Ct F manual mkd.1 | gzip -f mkd.1.gz
 +
              Product UNIX manual for french users.<br>
 +
      mkd -Ct M manual mkd.1 | gzip -f mkd.1.gz
 +
              Product UNIX manual.<br>
 +
      mkd -Csl '*Sied' mkd3.c  '*.verif_struct'
 +
              Product  documentation  with  structure  of  program,  includes,
 +
              defines,  ifdef  else  and  endif  compile  options,  to  verify
 +
              structure  of  program.  (with  compilable  options  CD1='#' or
 +
              CD2='#' in version.h from mkd distribution).<br>
 +
      mkd -jfsl '*OHie' mkd_docu.prj mkd.org
 +
              Product organigram. Comment begin with *,O,H, and sources  files
 +
              are  itemize  in project file.  (with compilable options CD1='#'
 +
              or CD2='#').<br>
 +
      mkd -l '*ide' mkd3.c '*.id_ei'
 +
              (with compilable options CD1='#' or CD2='#').<br>
 +
      mkd -pj '**' mkd_docu.prj mkd.strings
 +
              Extract strings from program. (messages are printed to  stdout).
 +
              (sources  files are itemize in project file, and with compilable
 +
              options CD4=CD5=´\"´).<br>
 +
      mkd (without argument)
 +
              Cause any  error  and  syntax  are  transmit  to  terminal  with
 +
              caracters compiled to use options l and p.<br>
 +
  '''AUTHOR'''
 +
       JP LOUYOT, Clara JIMENEZ.<br>     
 +
      http://edeulo.free.fr/wiki/index.php/Portail:mkd <br>
 +
'''NOTES'''
 +
      No  match, for read and decode include files from sources files in this
 +
      Release 12.03.0<br>
 +
'''BUGS'''
 +
      Bugs Report: http://edeulo.free.fr/phpBB3/viewforum.php?f=14 <br><br><br><br><br>
 +
                                29 March 2012                          MKD(1)<br>
 +
{{Boîte déroulante/fin}}
-
      http://edeulo.free.fr/wiki/index.php/Projet_mkd/Compilations_UNIX-LINUX
+
== Exemple de pseudocode généré par mkd ==
-
NOTES
+
L'examen de ce pseudo code permet d'identifier rapidement des erreurs de structure ou un défaut dans l'organigramme.
-
      Cette  version  12.03.0  ne lit et ne décode pas les fichier inclus par
+
-
      '#include' dans les sources.
+
 +
{{Boîte déroulante/début|titre=pseudocode cpp.c}}
 +
'''Commande mkd -nts O cpp.c pseudo_cpp.txt'''
-
BUGS
+
''(Il manque un pseudocode entre les lignes 216 et 227 qui nécessite vérification et correction)''
-
      Bugs Report: http://edeulo.free.fr/phpBB3/index.php
+
<pre style="color:red;">
 +
  127    tant que pas fin de fichier source
 +
  131    si début de texte faire c1=LF
 +
  133    sinon prendre pour c1 le char pointe
 +
  135    si le char est NL repérer la position qui suit NL, dans nl
 +
  144    si le char est '\t' incrémenter tab
 +
  146    sinon si le char est '/'
 +
  148    alors:  
 +
  152    si suivi par c2 = '*' ou '/' et si options[0]=0 ou si suivi par char code utilisateur
 +
  161    alors:
 +
  163    si c2 = '/' positionner le booléen ligne à vrai (=1)
 +
  165    repérer la position commentaire
 +
  169    si option n insérer le numéro de ligne
 +
  175    si pas option t
 +
  178    se positionner en début de ligne
 +
  181    copier la ligne jusqu'au commentaire, dans le fichier doc
 +
  189    sinon: (option t)
 +
  192    copier des tab autant qu'il y en a dans le source
 +
  198    copier des blancs jusqu'à la position commentaire
 +
  205    puis si booléen ligne est vrai (=1)
 +
  207    alors : copier le commentaire jusqu'en fin de ligne ou End Of File (EOF)
 +
  216    sinon : tq ne rencontre pas * suivi de /, copier le commentaire
 +
  227    si option n et char=NL insérer le numéro de la ligne qui suit NL
 +
  252                                   Opt. compil. *** FULL_LINE ***
 +
  253    si pas option t
 +
  256    copier les chars jusqu'en fin de ligne (ou EOF) y compris '\r' sous DOS
 +
  263    sinon (option t)
 +
  265           Opt. compil. end *** FULL_LINE ***
 +
  267    aller au bout de la ligne sans copier, sauf les 'retour chariot'
 +
  277    puis envoyer les NL sous forme \n
 +
  282    revenir sur NL
 +
  286    sinon: (pas de commentaire
 +
  289    revenir en arrière de 2 caractères
 +
  293    fin si char = '/'
 +
  295    fin si pas NL
 +
  297    fin tq !EOF
 +
  299    Fin
 +
</pre>
 +
{{Boîte déroulante/fin}}
-
      Générateur de documents mkd
+
== Notes et références ==
 +
=== Styles de langages ===
 +
* Notes Style de langage<ref name="commentaires_informatiques" />:
 +
Définition de NL: ''New Line'', fin de ligne.
 +
Les styles impératifs (ABCFPSlp) s'excluent les uns des autres et ne permet pas la recherche de style par l'option '-f' (trouver le style)
 +
:* Style A (Assembleur)
 +
:: ; ''Commentaire'' NL : {{bleu |.asm, .asi ; .s sous unix ou linux}}
-
                                29 Mars 2012                          MKD(1)
+
:* Style B (Basic)
 +
:: REM (après un marqueur ' : ' dans QBasic) ''Commentaire'' NL
 +
:: ' ''Commentaire'' NL : {{bleu |.bas, .vb (Visual Basic), .bat}}
 +
 
 +
:*Styles C++
 +
::/* ''Commentaire'' */ : {{bleu |.c++, .h++, .c--, .h--, .cpp, .hpp, .css, .cc, .hh, .cp (c#), .cs (c#), .c#, .C, .h, .d, .pro (Prolog), .pl (Perl), .php, .jav (Java), .jse (Javascript), .js (Javascript)}}
 +
::// ''Commentaire'' NL : C, C++, C#, CSS, D, Java, Javascript, PHP, Scilab ...
 +
::{{rouge | Attention à l'indétermination pour le fichier .pl qui peut aussi être de style SHELL UNIX}}
 +
 
 +
:* Style F (Fortran 77) voir Style l pour le Fortran 90 et plus récents.
 +
:: C ou c ou * ''Commentaire'' NL ; C,c ou * en première colonne. ; .f sous unix ou linux
 +
 
 +
:* Style P (Pascal):
 +
:: (* ''Commentaire'' *) : AppleScript,  Caml, Modula-2, Modula-3, Oberon, Pascal, ... ; {{bleu |.pas sous Windows, .p sous unix ou linux}}
 +
:: { ''Commentaire'' } Delphi (Pascal objet)
 +
 
 +
:* Style S (Shell UNIX): Csh, Bash, sh, et autres shells, Makefile, Perl, PHP, Python, Ratfor, Ruby, Tcl, ...
 +
:: # ''Commentaire'' NL : {{bleu |.sh, .csh, .pl, .rb, .py, .pyw}}
 +
 
 +
:* mkd reconnaît aussi ses fichiers de projets {{bleu |.pj et .prj}}
 +
 
 +
=== Styles adaptables à la compilation ===
 +
 
 +
:* Style l (selon option compilée) ; décodage des lignes. Remplace une commande impérative (ABCFPS) et les trois extractions peuvent être associée simultanément. CD₁ et CD₂ en première colonne, CD₃ n'importe où dans la ligne.
 +
:: avec CD₃ = ' ! ' Fortran 90
 +
:: avec CD₁₂₃ = ' % ' Latex, Matlab, Postscript, Tex
 +
:: avec CD₁₂₃ = ' # ' comme style S
 +
 
 +
:* Style p (selon option compilée) ; décodage des blocs de lignes :
 +
:: Avec CD₄ = ' ( ' et CD₅ = ' ) ' : ( ''Commentaire'' )
 +
:: avec CD₄ = CD₅ = ' " ' Chaînes de caractères " ''Commentaire'' "
 +
:: avec CD₄ = CD₅ = ' ' ' Chaînes de caractères ' ''Commentaire'' '
 +
:: avec CD₄ = ' < ' et CD₅ = ' > ' tous les tags
 +
 
 +
; Remarque : Il est toujours possible d'inclure un style de commentaire dans un commentaire d'un autre style !
 +
 
 +
=== Références ===
 +
 
 +
<references />
 +
 
 +
 
 +
[[Catégorie:Générateurs de documentation pour consoles]]

Version actuelle en date du 20 novembre 2015 à 16:52

Retour au portail mkd

Dossier extractdoc du 04/12/2009 mis à jour 05/04/2012 A QUOI SERVENT MKD ET SES DÉRIVÉS ?

mkd pour consoles ou terminaux sert essentiellement aux programmeurs et à la maintenance. Il est utilisé à tous les niveaux du cycle de vie en V des logiciels, de la conception à la génération des documents destinés aux utilisateurs.

Sommaire

Généralités

mkd

  • Avec la version mkd-12.03 l'application est internationalisée (multilingue) et prend en charge des caractères UTF-8
  • Cet utilitaire est aussi simple d'utilisation que dir, make, touch ou grep.
  • Comme tous ces utilitaires, il s'installe dans le répertoire d'accès rapide /usr/bin.

On se sert souvent de cette application pour installer des logiciels, et dans le Makefile de compilation d'un projet.

  • mkd génère automatiquement la documentation et le manuel qui correspondent exactement aux fichiers actualisés.
  • mkd extrait les fichiers d'entête des fonctions mises à jour pour créer une documentation complète des fonctions d'un projet.

Dérivés de mkd

En ligne de commande ou intégrés dans les fichiers de commandes

  • mkdcpp est une version restreinte de mkd aux langages du style C , c++, php.
  • mkdasm est une version restreinte de mkd aux langages de type assembleur.
Ces deux applications ont été réalisées pour effectuer des tests sur les modules cpp et asm.
Elles n'ont pas été prévues pour être utilisées comme mkd qui est la seule application réellement intéressante dans les projets.

mkdcppw expérimental

  • mkdcppw : Version fenêtrée de mkdcpp, plus complète, prélude à mkdw version graphique fenêtrée de mkd.
mkdcppw est disponible en version beta depuis le 10 avril 2012.

Nouveautés

Le projet

Ce projet reprend tout ou partie du projet MakeDoc (ou mkdoc ou encore mkd) de l'ex Centre d'Electronique de Montpellier, Université Montpellier II

Ce projet resté sans licence est maintenant repris sous licence libre européenne: European Union Public Licence (EUPL) par l' EELL

Ce logiciel doit évidemment, vu sa conception sous logiciel libre, rester libre de droit, gratuit, et ne peut en aucun cas faire l'objet d'une prise de brevet, d'une transaction ou d'une copie dans un but commercial, cependant le "copyleft" est autorisé et bienvenu.

Son but est d'être polyvalent, aussi universel que possible. Il doit permettre de générer de multiples documents à partir de commentaires précodés dans des fichiers de sources eux aussi multiples. (par exemple: des compilation avec des fichiers cpp + assembleur + fichiers texte etc.)[1].

Les documents habituels sont:

   Documentation sur l'architecture et la conception.
   Documentation technique: d'exploitation, matérielle, programmeurs.
   Documentation utilisateurs: bibliothèque logicielle, tutoriel.
   Documentation de marketing.

L'extraction permet en un tour de main, d'assurer le contrôle rapide et la mise à jour de l'ensemble des documents précités.

Le nom

Le nom choisi est mkd par le fait qu'en 2010 les noms mkdoc, makeDoc et makeDocu ont, entre temps, été pris par d'autres logiciels.

Ce nom, pour les besoins pourra avoir des extensions comme:

  • mkdasm pour décoder la documentation de style l'assembleur, équivalent à mkd -A, où mkd fait appel au module asm_
  • mkdcpp ou mkdphp pour le décodage de style C++ ou PHP, équivalent à mkd -c mais plus explicite, où mkd fait appel au module cpp_ etc.

Les extensions asm, cpp, php, etc. liés à mkd permettent d'accéder directement aux modules asm_, cpp_, etc. (php est équivalent à cpp pour le décodage).

En début 2012 cette idée de créer des applications comme mkdphp et similaires est abandonnée. Ces applications n'apportent rien de nouveau. Une application fenêtrée de mkdcpp (mkdcppw) en cependant en cours d'évaluation.

La compilation, les plateformes

La compilation devra être validée sous WINDOWS et sous UNIX/LINUX, voire sous MAC pour les processeurs 32 et 64 bits. La version 16 bits devra être préservée et pourra être mise à jour.

L'épreuve finale d'intégration pourra se faire au travers de fichiers shells (.bat ou .bash).

On pourra multiplier le nombre des modules au gré de l'évolution des langages et le cas échéant on pourra créer des libraires si le nombre des modules devient trop importants (.dll sous Windows ou .so sous UNIX/LINUX). Dans ce cas il faudra modifier les paramètres de transmission aux modules afin de récupérer les options. (Les variables d'options sont globales dans les versions actuelles)

Détails concernant les anciennes versions (antérieures à 3.22):

Contrairement aux versions précédentes, qui incluaient chaque fichier dans une seule compilation, tous les modules seront compilés séparéments et pourront faire l'objet d'épreuves unitaires de modules ou d'épreuves spécifiques lors de l'intégration.

Les compilations avec des options particulières des versions anciennes seront reprises dans des modules particuliers (anciennes compilations avec les options ligne et page).
Exemple mkdstring pour extraire les chaines de caractères, mkdpostscript pour extraire les commentaires postscript etc. feront l'objet de nouveaux modules et on introduira un nouveau code de commande pour remplacer l'option de compilation FULL_LINE (si nécessaire).

Lignes de commande console des programmes exécutables:

Ligne de commandes traditionnelle:
  mkd [--Options] [-5 caractères à décoder] fichier_source [fichier_cible]

Lignes de commandes spéciales:
  mkdxx..xx [--Options] [-5 caractères max à décoder] fichier_source [fichier_cible]
  où l'option 'f' peut ne pas avoir de sens.

Par défaut le fichier_cible prendra le nom du fichier source suivi de l'extension prédéfinie .doc ou .txt; l'extension des fichiers de projets sera .prj ou .pj

Options: a, f, j, n, s, t, v, w, langage à décoder

a, f, j, v, w sont des options particulières au module de commande (main mkd)

n, s, t sont des options destinées aux modules (asm_, cpp_, fortran_, etc.)

a, ajouter à un fichier destinataire (append)

f, trouver le style de commentaire à décoder en fonction de son extension (find), pourra être affiné par un recherche à l'intérieur des fichiers.

j, le fichier source est un fichier de projet, se combine avec l'optiopn 'f' s'il composé de fichiers sources différents.

n, fait précéder le commentaire du numéro de ligne sur les premières colonnes.

s, ajouter les commentaires décodés à la sortie standard (l'écran le plus souvent). Ceci permet parfois des ajouts ou des filtres SHELL avec les redirections > et >>).

t, ne copie que le texte. (copy text only) contrarie certaines options comme le mode bavard dans l'écriture de la documentation.

v, mode bavard (verbose)

w, crée ou recrée le fichier destinataire de même nom (overwrite)<br/>

langages à décoder:

exemples : 
C pour style C, (C++ ou PHP), 
F pour style FORTRAN 77, 
P pour style PASCAL, etc.

Le style des langages compilés devra être précisé par la commande mkd --help --? ou dans la documentation utilisateur mkd.1 sous UNIX/LINUX

Caractères repères d'extraction (décodage):
Tous caractères alphanumériques ASCII et caractères spéciaux '**' (5 caractères maximum)

Le droit de copie

© EELL, Éditeurs Européens de Logiciels Libres, 20074
Contact: JPL EELL

Concédée sous licence EUPL, version 1.1 ou – dès leur approbation par la Commission européenne - versions ultérieures de l’EUPL (la «Licence»). Vous ne pouvez utiliser la présente œuvre que conformément à la Licence. Vous pouvez obtenir une copie de la Licence à l’adresse suivante:

http://ec.europa.eu/idabc/eupl5 ou sur ce site en version française Licence EUPL V1.1

Sauf obligation légale ou contractuelle écrite, le logiciel distribué sous la Licence est distribué «en l’état», SANS GARANTIES OU CONDITIONS QUELLES QU’ELLES SOIENT, expresses ou implicites. Consultez la Licence pour les autorisations et les restrictions linguistiques spécifiques relevant de la Licence.

Évolution du projet

Les bases précisées dans ce document sont susceptibles d'évoluer en fonction des besoins des programmeurs ou autres professions intéressées. Dans un premier temps on reprendra les modules définis dans les versions précédentes.

En mars 2010 le module cpp_ a été ajouté dans la version 10.03 pour extraire les documents de style C++, PHP, etc.

Les fichiers documentaires et de gestion des erreurs pour les différentes langues devront, si possible, être rapidement proposés au moins en français et anglais, puis dans les différentes langues européennes, sans oublier les autres langues évidemment.

Jusqu'en 2012 nous nous contentions des caractères ASCII étendus. Les caractères entrés en programmation (au clavier) ne nous ont pas obligés à reconcevoir fonamentalement les différents modules.
Les documents, aujourd'hui peuvent être écrits dans des langues très différentes et les codes utf8 ne suffisent pas. Il faut envisager de revoir nos souces. Cette question est d'actualité !

Exemple de manuel généré par mkd jusqu'en 2012

Après 2012, les manuels ont été traduits. Il devenait difficile de les intégrer dans le fichier d'entête version.h

Voir : Fichiers en développement

Exemple de pseudocode généré par mkd

L'examen de ce pseudo code permet d'identifier rapidement des erreurs de structure ou un défaut dans l'organigramme.

Notes et références

Styles de langages

  • Notes Style de langage[1]:

Définition de NL: New Line, fin de ligne.

Les styles impératifs (ABCFPSlp) s'excluent les uns des autres et ne permet pas la recherche de style par l'option '-f' (trouver le style)

  • Style A (Assembleur)
 ; Commentaire NL : .asm, .asi ; .s sous unix ou linux
  • Style B (Basic)
REM (après un marqueur ' : ' dans QBasic) Commentaire NL
' Commentaire NL : .bas, .vb (Visual Basic), .bat
  • Styles C++
/* Commentaire */ : .c++, .h++, .c--, .h--, .cpp, .hpp, .css, .cc, .hh, .cp (c#), .cs (c#), .c#, .C, .h, .d, .pro (Prolog), .pl (Perl), .php, .jav (Java), .jse (Javascript), .js (Javascript)
// Commentaire NL : C, C++, C#, CSS, D, Java, Javascript, PHP, Scilab ...
Attention à l'indétermination pour le fichier .pl qui peut aussi être de style SHELL UNIX
  • Style F (Fortran 77) voir Style l pour le Fortran 90 et plus récents.
C ou c ou * Commentaire NL ; C,c ou * en première colonne. ; .f sous unix ou linux
  • Style P (Pascal):
(* Commentaire *) : AppleScript, Caml, Modula-2, Modula-3, Oberon, Pascal, ... ; .pas sous Windows, .p sous unix ou linux
{ Commentaire } Delphi (Pascal objet)
  • Style S (Shell UNIX): Csh, Bash, sh, et autres shells, Makefile, Perl, PHP, Python, Ratfor, Ruby, Tcl, ...
# Commentaire NL : .sh, .csh, .pl, .rb, .py, .pyw
  • mkd reconnaît aussi ses fichiers de projets .pj et .prj

Styles adaptables à la compilation

  • Style l (selon option compilée) ; décodage des lignes. Remplace une commande impérative (ABCFPS) et les trois extractions peuvent être associée simultanément. CD₁ et CD₂ en première colonne, CD₃ n'importe où dans la ligne.
avec CD₃ = ' ! ' Fortran 90
avec CD₁₂₃ = ' % ' Latex, Matlab, Postscript, Tex
avec CD₁₂₃ = ' # ' comme style S
  • Style p (selon option compilée) ; décodage des blocs de lignes :
Avec CD₄ = ' ( ' et CD₅ = ' ) ' : ( Commentaire )
avec CD₄ = CD₅ = ' " ' Chaînes de caractères " Commentaire "
avec CD₄ = CD₅ = ' ' ' Chaînes de caractères ' Commentaire '
avec CD₄ = ' < ' et CD₅ = ' > ' tous les tags
Remarque 
Il est toujours possible d'inclure un style de commentaire dans un commentaire d'un autre style !

Références

  1. 1,0 1,1 Styles de commentaires informatiques
Outils personnels