/*U*** MKD ********************************************************************
*M name: mkd (make documentation)
*U (programme extracteur de documents, Manuel, Organigramme, Structure,
*U warnings, points de Test, notes pour la maintenance du Programmeur, etc... )
*M origine: Centre d'Electronique de Montpellier
*M Univ. Sciences & Techniques du Languedoc
*M 34060 MONTPELLIER CEDEX
*P programmeur R3.12: JPLouyot, adr electronique: louyot@obelix.cnusc.fr
*P programme R3.12 pour systeme UNIX mkdoc, et version PC IBM mkd.exe
*U
*U Ce programme range dans un fichier.doc par defaut, ou dans tout fichier
*U nomme en dernier parametre:
*U avec les options l et p:( CD1,CD2,CD3,CD4,CD5, sont definis dans version.h )
*U -- la ligne COMMENCANT par les caracteres CD1 ou CD2 ou CD3 et suivis par
*U un des 5 caracteres donnes en parametre char_codes (avec option l).
*U -- la ligne CONTENANT le caractere defini par CD3 suivi par un des 5
*U caracteres donnes en parametre char_codes (avec option l).
*U -- les lignes CONTENANT et SUIVANT le caractere defini par CD4 et suivi par
*U un des 5 caracteres donnes en parametre char_codes (avec option p)
*U JUSQU'A la ligne qui contient le caractere CD5. Attention, si le carac-
*U tere CD5 est NL la ligne suivante sera ignoree.
*U
*U avec les options: A, B, C, F, P, et S:
*U le tri est effectue conformement a la definition des commentaires de
*U chaque langage, A:Assenbleur, B:Basic, c:C, F:Fortran, P:Pascal, S:Shell
*U
*U avec char_code = '**' tous les commentaires correspondants aux langages ou
*U aux options l et p selectionnes sont copies.
*U
*U syntaxe de la ligne de commande:
*U syntaxe pour pc IBM:
*U mkd [-ABCFPSajlnpstvw] char_codes [drive:]path_source [[drive:]path_target]
*M syntax for UNIX version:
*M mkdoc [-ABCFPSajlnpstvw] char_codes path_source [path_target]
*M
*M -- path_source : path source file (or project file: option j )
*M -- char_codes : all ASCII
*M -- options : -A Assembler source file or similar ( ; -> NL )
*M -B Basic source file or similar (REM or ' -> NL)
*M -C C source file, or similar (PROLOG) ( / * -> * / )
*M -F Fortran source file or similar (c,C or * -> NL)
*M -P Pascal source file ( {to}, (*to*) )
*M -S Shell files or similar ( # -> NL ' )
*M -a append target file
*M -f find langage source file (useful with project file)
*M -j if path_source is a project file only
*M -l line read line only
*M -n insert line number
*M -p page read text
*M -s screen view
*M -t comment only
*M -v verbose mode
*M -w overwrite target file
*M ( default option: overwrite switch off)
*M -- path_target : path target file
*M
*M examples for UNIX version:
*M ++++++++++++++++++++++++++
*M mkdoc -Csn '*S' mkdoc3.c verif.struct
*M mkdoc -Fst UM version.h /usr/local/docu/mkdoc.docu
*M mkdoc -Cst M version.h /usr/local/man/manl/mkdoc.l
*M mkdoc -lt '*UM' mkdoc3.c \*.manual with CD1='*' or CD2='*'
*M mkdoc -jv '**' mkd_docu.prj (for all comments, sources in prj file)
*M mkdoc -pjnv '**' mkd_docu.prj (for all strings, sources in prj file,
*M with CD4=CD5='\"')
*U exemples pour version PC:
*U +++++++++++++++++++++++++
*U mkd -Csn *SOn \mkdoc3.c verif.str (char space:' ' is not available)
*U mkd -Fst UM a:version.h c:\man\mkd.doc
*U mkd -Fst M a:version.h d:mkd.man
*U mkd -lt *UM mkdoc.c *.MAN (for users and manual, with CD1='*', CD2='*')
*U mkd -jv ** file.prj (for all comments, sources in project file)
*U or mkd -pjnv '**' mkd_docu.prj (for all strings, sources in .prj file,
*U with CD4=CD5='"')
*U
*U Pour l'ASSEMBLEUR utiliser ; avec l'option A
*U (ou l'option l avec CD3=';')
*U Pour le BASIC (ou BATCH) utiliser ' ou REM avec l'option B
*U (ou option l avec CD3='\'')
*U Pour le C et PROLOG utiliser / * et * / avec l'option C
*U Pour le FORTRAN utiliser C, c, ou * en 1ere colonne avec l'option F
*U ( ou option l avec CD1='c' CD2='C' CD3='*' )
*U Pour le PASCAL utiliser les accolades { et } ou (* et *)
*U ( ou option p avec CD4='{' et CD5='}' )
*U Pour le CSHELL utiliser # avec l'option S
*U ( ou option l avec CD3='#' cas fin de ligne = NL )
*U Pour les fichiers projet avec des sources UNIX: .s .c .i .f .r .p melanges,
*U ou .ASM .C .FOR .PAS etc... sources PC, utiliser l'option f (find).
*U Pour les commentaires de fichiers POSCRIPT compiler avec CD3='%'
******************************************************************************/