Short: Autodoc like doc-extraction utility v1.1 Author: Stefan Ruppert Type: dev/misc Architecture: m68k-amigaos makedoc makedoc $VER: makedoc.doc 1.1 (08.05.94) NAME makedoc FORMAT makedoc [FILES] file1 [file2] [...] AUTODOC docfile [TEMPFILE temporyfile] [BEGIN string] [END string] [SKIPSTRING string] [TABS numspcs] [LINELENGTH numchars] [CONVERTCOMMENTS] [NOWORDWRAP] [NOFORMFEED] [TOC] [LANGUAGE lang] [AMIGAGUIDE] [NOICON] [VERBOSE] [APPEND file] [VERSION version-number] [REVISION revision-number] [REVISIONFILE file] TEMPLATE FILES/M/A,AUTODOC/K/A,TEMPFILE/K,BEGIN/K,END/K,SKIPSTRING/K,TABS/N, LINELENGTH/N,CONVERTCOMMENTS/S,NOWORDWRAP/S,NOFORMFEED/S,TOC/S, LANGUAGE/K,AMIGAGUIDE/S,NOICON/S,VERBOSE/S,APPEND/K,VERSION/N, REVISION/N/K,REVISIONFILE/K FUNCTION extracts documentfragments from source code files and saves this in a documentation file in sorted order (Format : AutoDoc). Makedoc supports extraction of different languages for a documentation. To do that , you must specifiy in the BEGIN string the "LL" substring, to match at this point the different langauges with the following abbreviation : "DK" - dansk "D?" - deutsch "E?" - español "F?" - français "GB" - english "I?" - italiano "NL" - nederlands "N?" - norsk "P?" - português "S?" - svenska Makedoc creates also icons for a documentation, if the NOICON option isn't specified. Makedoc looks first for the Env:sys/def_doc.info icon and if this doesn't exist it uses the WBPROJECT icon ! If you specify a REVISIONFILE makedoc searches in the found documentation- fragments for the version pattern : "$VER: " and if it founds it, it fills teh appropriate values in (VERSION,REVISION,NAME and DATE). INPUT FILES - one or more sourcefiles AUTODOC - AutoDoc file to create. If no language is specified , then makedoc searches here for a language specific directory-name. For example a full path like the following use the english language to extract the documentation : doc/english/test.doc TEMPFILE - tempory file to use BEGIN - String, which indicates the beginning of a documentation fragment (Default : "/******") END - String, which indicates the end of documentation fragment (Default : "***") SKIPSTRING - String, which is skipped at the beginning of each line in the documentation fragment (Default : "*") TABS - number of blanks to replace a tabulator LINELENGTH - maximal length of a line (Default : 78) CONVERTCOMMENT - converts backslashes to slash, if before or after there is an asterik NOWORDWRAP - turns wordwrap off NOFORMFEED - turns formfeed off , after each documentation fragment TOC - creates at the beginning of the Autodoc a table of contents LANGUAGE - specifiy the langauge for the documentation to be extracted. See list of languages above. AMIGAGUIDE - places a @node before and a @endnode after the documentation fragment. Thus you have AmigaGuide Nodes ! NOICON - creates no icons for the AutoDoc file VERBOSE - shows parse informations APPEND - file to append at the end of the documentation VERSION - version number of the documentation/program (Default : 0) REVISION - revision number of the documentation/program REVISIONFILE - file, which contains the revision of the documentation/ program (see bumprev).This argument overrides the REVISION argument and additionly it uses the date of the file for the $VER: date. EXAMPLE makedoc test.c AUTODOC test.doc BEGIN "/**LL******" END "******" \ SKIPSTRING "**" TOC VERBOSE NOFORMFEED LANGUAGE english or makedoc test.c AUTODOC doc/english/test.doc BEGIN "/**LL******" \ END "******" SKIPSTRING "**" TOC VERBOSE extracts only following fragments : /*GB*** test.lib/test.c ************************************************** * * here the documentation * ***** END of documentation **********************************************/ The following command , extracts only fragments for menus : makedoc test.c AUTODOC test.doc BEGIN "/**LL**MENU**" END "******" \ SKIPSTRING "**" TOC VERBOSE NOFORMFEED LANGUAGE english extracts only fragments like the following : /*GB*MENU* Menu/Project/Open ********************************************* * * here the menu-documentation * ***** END of Menu-documentation *****************************************/ NOTE makedoc uses ReadArgs to parse the command line, thus if you specify a "*" in a string , you must do this twice for each character you want. ReadArgs uses this character to output special characters like a newline. SYSTEM REQUIREMENT Any Amiga with at least OS2.04 (V37) or higher.Look out for OS3.x, it's a great improvement to OS2.04 (see Datatypes ...) !!! SEE ALSO autodoc COPYRIGHT (C) Copyright 1993,1994 by Stefan Ruppert Makedoc is freely distributable, if any file in Contents-List is not modified and copied. IDEAS,BUGS ?,GIFTS,PROGRAMS AND AMIGAS TO Stefan Ruppert Windthortstraße 5 65439 Flörsheim am Main Germany