Once we all have achieved the above, then we can have a formal schedule and structure.
<?.
files := Array <-
'../base.c' ;
'../collections.c' ;
'../file.c' ;
'../system.c' ;
'../plugins
/request/request.c'.
files each: { index file |
var f := File new: file.
var str := f read.
var commentBlocks := str split: '/**'.
commentBlocks shift.
(commentBlocks count) times: {\
var comment := commentBlocks shift.
var lines := comment split: '\n'.
lines count > 3 ifTrue: {\
#print the headline
var headline := lines @ 1.
Pen write: '.
BR.BR.BR', brk brk.
((headline indexOf: '@internal') = -1) ifTrue: {\
Pen write: '.B ' + (headline skip: 3), brk.
#print the rest
Pen write: '.nf', brk.
var line := ''.
var n := 2.
{\
line := lines at: n.
^ ((line indexOf: '*/') = -1).
}
whileTrue: {\
line := line replace: '\\' with: '\\\\'.
Pen write: ' '+(line skip: 2), brk.
n add: 1.
}.
Pen write: '.fi', brk.
}.
}.
}.
}.
?>