diff --git a/ChangeLog b/ChangeLog index c90365b1f..1e4309ed9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2000-08-13 Manuel Guesdon + + * Tools/GNUmakefile: added DocTemplates + * Tools/Makefile.postamble: added DocTemplates + * Tools/indextemplate.gsdoc: New file. Use it as template for + gsdoc index generation + * Tools/AutoDocTemplate.gsdoc: New File: Use it as templae for AutoDoc + source-to-documentation generation. + 2000-08-13 Manuel Guesdon * Tools/gsdoc-0_6_6.dtd: added ivariable, constant and stylesheet diff --git a/Tools/AutoDocTemplate.gsdoc b/Tools/AutoDocTemplate.gsdoc new file mode 100644 index 000000000..97b99dc42 --- /dev/null +++ b/Tools/AutoDocTemplate.gsdoc @@ -0,0 +1,272 @@ + + + + + [[infoDictionary.basetitle]] [[mainTitle]] + + + + [[infoDictionary.author-desc]] + + [[version]] + [[timestampString]] + + [[if mainInterface.interfaceTitle == Class]] + [Source : [[mainInterface.className]].gsdoc] + [[else]] + [[if mainInterface.interfaceTitle == Category]] +[Source : [[mainInterface.className]]+[[mainInterface.categoryName]].gsdoc] + [[else]] + [[if mainInterface.interfaceTitle == Protocol]] +[Source : [[mainInterface.protocolName]]Protocol.gsdoc] + [[endif Protocol]] + [[endif Category]] + [[endif Class]] + DTD] + [[copyrightYear]][[if copyrightOwner.length > 0]] by [[copyrightOwner]][[endif]] + + + + + + + + + +[[if hasMainInterface == 1]] + [[mainTitle]] + [[if mainInterface.interfaceTitle == Class]] + 0]] super="[[mainInterface.inheritsString]]"[[endif]]> + [[else]] + [[if mainInterface.interfaceTitle == Category]] + + [[else]] + [[if mainInterface.interfaceTitle == Protocol]] + + [[endif Protocol]] + [[endif Category]] + [[endif Class]] + + [[importString]] + +[[if mainInterface.conformedProtocols.count > 0]] + [[foreach protocolName mainInterface.conformedProtocols prot1]] + [[protocolName]] + [[endforeach prot1]] + [[endif conformedProtocols]] +[[endif hasMainInterface == 1]] + + + + +[[if hasMainInterface == 1]] + + [[mainInterface.interfaceTitle]] Description - + [[mainInterface.entityDescription.formattedCommentString]] + +[[endif hasMainInterface == 1]] + +[[if hasMainInterface != 0]][[comment - Everything else is only done if we have an interface]] + + + + +[[if mainInterface.interfaceTitle == Class]] +[[if mainInterface.ivarArray.count > 0]] + [[comment Instance Variables]] + [[foreach ivar mainInterface.ivarArray ivar1]] + +[[ivar.entityDescription.formattedCommentString]] + + [[endforeach ivar1]] +[[endif ivarArray]][[endif Class]] + + + + + +[[if mainInterface.classMethods.count > 0]] + [[comment Class Methods]] + [[foreach method mainInterface.classMethods method1]] + [[if methodIndex > 0]] [[comment Start]] [[endif]] + [[comment + [[method.selectorName]]]] +[[comment +]] + [[if method.argumentCount == 0]] + [[method.selectorName]] + [[else]] + [[foreach arg method.arguments arg1]] + [[if argIndex > 0]] [[endif]] + [[arg.argName]]: + [[arg.varName]] + [[endforeach arg1]] + [[endif]] + [[method.entityDescription.formattedCommentString]] + + [[if methodIndex > 0]] [[comment Stop]] [[endif]] + [[endforeach method1]] +[[endif classMethods]] + + +[[if mainInterface.instanceMethods.count > 0]] + [[comment Instance Methods]] + [[foreach method mainInterface.instanceMethods method1]] + [[if methodIndex > 0]] [[comment Start]] [[endif]] + [[comment + [[method.selectorName]]]] + [[comment -]] + [[if method.argumentCount == 0]] + [[method.selectorName]] + [[else]] + [[foreach arg method.arguments arg1]] + [[if argIndex > 0]] [[endif]] + [[arg.argName]]: + [[arg.varName]] + [[endforeach arg1]] + [[endif]] + [[method.entityDescription.formattedCommentString]] + + [[if methodIndex > 0]] [[comment Stop]] [[endif]] + [[endforeach method1]] +[[endif instanceMethods]] + + [[if mainInterface.interfaceTitle == Class]] + + [[else]] + [[if mainInterface.interfaceTitle == Category]] + + [[else]] + [[if mainInterface.interfaceTitle == Protocol]] + + [[endif Category]] + [[endif Category]] + [[endif Class]] +[[endif hasMainInterface]] + + + + + +[[if typedefArray.count > 0]] + + Defined Types + + [[foreach group typedefGroupArray group4]] + [[foreach typedef group.itemArray typedef1]] + [[comment [[typedef.name]]]] + + [[typedef.formattedValue]][[typedef.suffixValue]] + [[if group.comment.commentString.length > 0]] + + [[group.comment.formattedCommentString]] + + [[endif commentLength]] + + [[endforeach typedef1]] + [[endforeach group4]] + +[[endif typedefArray]] + + +[[if constantArray.count > 0]] + + Symbolic Constants + [[foreach group constantGroupArray group5]] + [[foreach constant group.itemArray constant1]] + [[comment [[constant.name]]]] + + [[if group.comment.commentString.length > 0]] +[[group.comment.formattedCommentString]] + [[endif commentLength]] + + [[endforeach constant1]] + [[endforeach group5]] + +[[endif constantArray]] + + +[[if macroArray.count > 0]] + + Macro Definitions + [[foreach group macroGroupArray group2]] + [[foreach macro group.itemArray macro1]] + + [[macro.parameterString]] + [[if group.comment.commentString.length > 0]] + [[group.comment.formattedCommentString]] + [[endif commentLength]] + + [[endforeach macro1]] + [[endforeach group2]] + +[[endif macroArray]] + + +[[if functionArray.count > 0]] + + Functions + [[foreach group functionGroupArray group3]] + [[foreach function group.itemArray function1]] +[[comment [[function.name]]]] + +[[function.formattedParameterString]]
+ [[if group.comment.commentString.length > 0]] +[[group.comment.formattedCommentString]] + [[endif commentLength]] + [[endforeach function1]] + [[endforeach group3]] +
+[[endif functionArray]] + + +[[if inlineFunctionArray.count > 0]] + + Static Inline Functions + [[foreach group inlineFunctionGroupArray group3]] + [[foreach function group.itemArray function1]] +[[comment [[function.name]]]] + +[[function.formattedParameterString]]
+ [[if group.comment.commentString.length > 0]] +[[group.comment.formattedCommentString]] + [[endif commentLength]] + [[endforeach function1]] + [[endforeach group3]] +
+[[endif inlineFunctionArray]] + + +[[if variableArray.count > 0]] + + Global Variables + [[foreach group variableGroupArray group6]] + [[foreach global group.itemArray global1]] +[[comment [[global.name]]]] + + [[if group.comment.commentString.length > 0]] +[[group.comment.formattedCommentString]] + [[endif commentLength]] + + [[endforeach global1]] + [[endforeach group6]] + +[[endif variableArray]] + +
+ + diff --git a/Tools/GNUmakefile b/Tools/GNUmakefile index 1281da308..8daa8ebbf 100644 --- a/Tools/GNUmakefile +++ b/Tools/GNUmakefile @@ -34,6 +34,10 @@ include ../config.mak dtddir = $(GNUSTEP_RESOURCES)/DTDs DTD_FILES = gsdoc-0_6_5.dtd gsdoc-0_6_6.dtd +# DocTemplates to install +doctemplatesdir = $(GNUSTEP_RESOURCES)/DocTemplates +DOCTEMPLATES_FILES = indextemplate.gsdoc AutoDocTemplate.gsdoc + # The application to be compiled TOOL_NAME = gdnc gsdoc defaults plmerge \ plparse sfparse pldes plser diff --git a/Tools/Makefile.postamble b/Tools/Makefile.postamble index 9c2b15732..7b078f0d0 100644 --- a/Tools/Makefile.postamble +++ b/Tools/Makefile.postamble @@ -25,6 +25,12 @@ after-install:: for file in $(DTD_FILES); do \ $(INSTALL_DATA) $$file $(dtddir)/$$file; \ done; \ + if [ ! -f $(doctemplatesdir) ]; then \ + $(MKDIRS) $(doctemplatesdir); \ + fi; \ + for file in $(DOCTEMPLATES_FILES); do \ + $(INSTALL_DATA) $$file $(doctemplatesdir)/$$file; \ + done; \ if [ "`$(WHOAMI)`" != "root" ]; then \ echo ""; \ echo "************************************************************"; \ diff --git a/Tools/indextemplate.gsdoc b/Tools/indextemplate.gsdoc new file mode 100644 index 000000000..109274098 --- /dev/null +++ b/Tools/indextemplate.gsdoc @@ -0,0 +1,23 @@ + + + + + [[projectName]] + + + + [[infoDictionary.authorDesc]] + + [[infoDictionary.version]] + [[infoDictionary.date]] [[timestampString]] + + [Source : [[indexFileName]]] DTD] + + [[infoDictionary.copyright]] + + + [[content]] + + + +