From cb0707d9ef6abfb4875bb0e063031efa640fad15 Mon Sep 17 00:00:00 2001 From: Richard Frith-Macdonald Date: Sat, 13 Oct 2001 18:52:54 +0000 Subject: [PATCH] Add markup for constants. git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@11135 72102866-910b-0410-8b05-ffd578937521 --- Tools/AGSOutput.m | 73 +++++++++++++++++++++++++++++++++++++++++------ Tools/autogsdoc.m | 15 ++++++++++ 2 files changed, 79 insertions(+), 9 deletions(-) diff --git a/Tools/AGSOutput.m b/Tools/AGSOutput.m index 62fafda7c..1d1cadcdb 100644 --- a/Tools/AGSOutput.m +++ b/Tools/AGSOutput.m @@ -179,8 +179,8 @@ static BOOL snuggleStart(NSString *t) [str appendString: @"\n"]; [str appendString: @"\n"]; + [str appendString: @"\"-//GNUstep//DTD gsdoc 0.6.6//EN\" "]; + [str appendString: @"\"http://www.gnustep.org/gsdoc-0_6_6.xml\">\n"]; [str appendFormat: @""] == NO) + constants = [[NSArray alloc] initWithObjects: + @"YES", @"NO", @"nil", nil]; + cCount = [constants count]; + } + for (pos = 0; pos < cCount; pos++) + { + NSString *c = [constants objectAtIndex: pos]; + NSRange r = [tmp rangeOfString: c]; + + if (r.length > 0) { - [a insertObject: @"" atIndex: l + 1]; - [a insertObject: @"" atIndex: l]; - l += 2; + NSString *start; + NSString *end; + + if (r.location > 0) + { + start = [tmp substringToIndex: r.location]; + } + else + { + start = nil; + } + if (NSMaxRange(r) < [tmp length]) + { + end = [tmp substringFromIndex: NSMaxRange(r)]; + } + else + { + end = nil; + } + if ((start == nil || snuggleStart(start) == YES) + && (end == nil || snuggleEnd(end) == YES)) + { + NSString *sub; + + if (start != nil || end != nil) + { + sub = [tmp substringWithRange: r]; + } + else + { + sub = nil; + } + if (start != nil) + { + [a insertObject: start atIndex: l++]; + } + [a insertObject: @"" atIndex: l++]; + if (sub != nil) + { + [a replaceObjectAtIndex: l withObject: sub]; + } + l++; + [a insertObject: @"" atIndex: l]; + if (end != nil) + { + [a insertObject: end atIndex: ++l]; + } + } } } diff --git a/Tools/autogsdoc.m b/Tools/autogsdoc.m index 87a19d5d6..b379e32e0 100644 --- a/Tools/autogsdoc.m +++ b/Tools/autogsdoc.m @@ -116,6 +116,21 @@ conforming (or not conforming) to the specified standards. +

+ Generally, the text in comments is reformatted to standardise and + indent it nicely ... the reformatting is not performed on + any text inside an <example> element.
+ When the text is reformatted, it is broken into whitespace separated + 'words' which are then subjected to some extra processing ... +

+ + Certain well known constants such as YES, NO, and nil are + enclosed in <code> ... </code> markup. + + Method names (beginning with a plus or minus) are enclosed + in <ref...> ... </ref> markup. + +

The tools accepts certain user defaults (which can of course be supplied as command-line arguments as usual) -