[Pharo-project] [Preview] Help System with new model
stephane.ducasse at inria.fr
Mon Mar 29 15:26:37 EDT 2010
> Can you consider the idea of a PragmaHelpBuilder as an extension to
> your system?
> I can define a method like this on some class:
> <helpTopic: 'Title goes here'>
> ^'Contents goes here.
> And then I can find all of these pragmas:
> | pragmas topics |
> pragmas := ((SystemNavigation default allMethodsSelect: [:each | each
> pragmas notEmpty])
> select: [:each | each compiledMethod pragmas allSatisfy: [:eachPragma |
> eachPragma keyword = #helpTopic:]])
> collect: [:each | each compiledMethod pragmaAt: #helpTopic:].
> topics := pragmas collect: [:each |
> title: (each argumentAt: 1)
> contents: (each method valueWithReceiver: nil arguments: #())]
> With a bit more annotation we could build classes just like the simple
> subclass case of CustomHelp where you only have a few methods on the
> class side. i.e just like your metacello example. Then there is no
> dependency on CustomHelp, and help comments can go anywhere in our
> various package structures for e.g pharo core, dev image. We would
> just need to decide on a set of annotations.
I would love to do something like
<helpTopic: 'Collection' subcategory: 'adding'>
or something like that
More information about the Pharo-dev