[PD] puredocumentation

Hans-Christoph Steiner hans at eds.org
Wed Sep 5 18:27:00 CEST 2007


Hey,

Nice initiative, Marius!  I am glad you are leading the charge on  
this.  I think we can use the pdpedia test setup to start testing  
ideas while I get the more permanent mediawiki installed (I am  
working on getting multi-language support going).

http://pdpedia.dreamhosters.com/index.php?title=Main_Page

What would be really nice to have is some test pages in that wiki so  
that we can start to get a good idea of how to structure things.  You  
could try dumping some content from your python script into the above  
wiki.

I think we can look to wikipedia as a model for a lot of our  
questions, I think the mission is quite similar.  For example, I  
think that the template should be structured the same on each  
language, like wikipedia.  But then the content would need to be  
filled in for each language.

.hc

On Aug 30, 2007, at 8:30 AM, marius schebella wrote:

> I know, the idea is not new. but now is a good time to get it done. I
> saw that almost everything is already written on
> http://puredata.org/dev/pddp/pdpedia/
> I am not sure how the categorization part could work.
> and I also don't know how to support multiple languages atm.
> what I will be working on during the next week(s) is a complete  
> list of
> all objects (externals and abstractions) with the main fields (name,
> description, library/author/licence) in a csv fileformat. (plus maybe
> one "junktext" field that contains all the comments of the  
> helppatch, so
> that in a first step we can work on one file, which makes it easy to
> copy+paste content around.) maybe we should put it in the cvs?
> then create the wiki base pages from that.
> marius.
>
> benjah at free.fr wrote:
>> Hi all,
>>
>> Jean noel montagne from artsensitif, french NGO, submit the idea  
>> of pdpedia a
>> while ago which reach the discussion we had during Pd conf about  
>> documentation
>> http://pdpedia.dreamhosters.com/index.php?title=Main_Page
>> maybe this can help...
>> on another side,  I would like to ask for funds to the french  
>> ministry of
>> culture in 2008 to improve in a collaborative way Pd documentation  
>> (in french)
>> and high level patches (in Pd), considering the great job that has  
>> already been
>> done by Pdmtl team, hans, frank, jérome...and many others, in  
>> order to allow as
>> many artists as possible to get into Pd.... not sure at all about  
>> the answer
>>
>> + many thanks to Montreal Pd conv team for this great meeting/event
>>
>> Benjamin - labomedia.net
>>
>> Alexandre Quessy a écrit :
>>> Hi Marius, Tom and all !
>>>
>>> 2007/8/29, marius schebella <marius.schebella at gmail.com>:
>>>> thanks,
>>>> atm I don't know how that works. otoh, can we use the index.txt?  
>>>> that
>>>> seems to contain most of the information.
>>>> that's a great library!
>>>> marius.
>>> In Pd Montreal Abstractions, it is a patch that parses help file
>>> patches (using pd objects and externals) to look for tags (such as
>>> "Author: ") at the beginning of comments.
>>>
>>> :)
>>>
>>> More people are going to contribute to the PdMtl Abstractions in the
>>> next few months. The format has changed a bit : the dot (".") now
>>> separates the categories and names of abstractions, instead of the
>>> file system path itself.
>>>
>>> a
>>>
>>>
>>>
>>>
>>>
>>>
>>>> Thomas O Fredericks wrote:
>>>>> We implemented something similar forthe help files in PDMTL
>>>>> abstractions. See the pdmtl.inde.maker.pd in
>>>>>
>> https://devel.goto10.org/listing.php?repname=pdmtl&path=%2Ftrunk% 
>> 2Ftools%2F&rev=0&sc=0
>> <https://devel.goto10.org/listing.php?repname=pdmtl&path=%2Ftrunk% 
>> 2Ftools%2F&rev=0&sc=0>
>>>>> Tom
>>>>>
>>>>> On 8/29/07, *marius schebella* <marius.schebella at gmail.com
>>>>> <mailto:marius.schebella at gmail.com>> wrote:
>>>>>
>>>>>     hi,
>>>>>     this is the start for the puredocumentation wiki.
>>>>>     for all who didn't follow the discussions during the  
>>>>> pdconv, here is the
>>>>>     latest:
>>>>>     some people agreed on building a media wiki for all  
>>>>> documentation
>>>>>     beyond
>>>>>     the pd help patches. some time ago there was the  
>>>>> puredatabase, but that
>>>>>     is quite dead now.
>>>>>     so the idea is, to reanimate something similar, but with  
>>>>> the possibility
>>>>>     for everyone to commit to it. maybe not everyone but if  
>>>>> 5-10% of users
>>>>>     help contributing, then I think the project will be  
>>>>> successful.
>>>>>     one of the reasons why this should be done, is that very  
>>>>> often pd users
>>>>>     look for a certain feature or object, but don't know the  
>>>>> name exactly
>>>>>     and need a good search engine.
>>>>>     so... the puredocumentation (in planning state) will cover  
>>>>> externals and
>>>>>     "stable" abstractions. (abstractions that are maintained  
>>>>> kind of like
>>>>>     externals)
>>>>>     additionally to the "wiki for objects" there will be the  
>>>>> section for
>>>>>     the
>>>>>     tutorials, manuals and faq, and hopefully you will be able  
>>>>> to type in
>>>>>     your search string after "How do I: " and get the right  
>>>>> objects,
>>>>>     examples and tutorials.
>>>>>     My estimation is, that there are more than 3000 objects  
>>>>> atm. so for the
>>>>>     beginning the tricky part is to build all the basic object  
>>>>> pages from
>>>>>     the existing documentation (mainly help patches).
>>>>>     here is, what I think should be the content of every object  
>>>>> page:
>>>>>     *objectname* the string name (for example "plus" for "+")  
>>>>> of the
>>>>>     object/external
>>>>>     *opt other name* = abbreviation, +,..
>>>>>     *helpfilename* (can be different than object name),
>>>>>     *description* = short description
>>>>>     *libraryinfo* purepd,GEM,cyclone... + author + licence
>>>>>     *arguments*
>>>>>     *inlets/outlets*
>>>>>     *examples* what this object is for... that's where you can  
>>>>> be creative!
>>>>>     *see also* / similar objects
>>>>>     *tags* like audio/dsp, math, MIDI, something like a  
>>>>> categorization.
>>>>>     I want to use python to extract as much information as  
>>>>> possible from
>>>>>     the
>>>>>     help-patches into one big textfile (csv style) from which  
>>>>> we can create
>>>>>     the wikipages. I hope to get the developers involved in  
>>>>> correcting the
>>>>>     cvs-textfile before the basic pages are created). this has  
>>>>> to be done
>>>>>     per library, and I am still trying to figure out, how to do  
>>>>> this in
>>>>>     detail. for example some help patches have some description  
>>>>> in the top
>>>>>     letmost corner. so a python script should be able to find that
>>>>>     information and put it into the "description" field.
>>>>>     there will be an irc session on sep 11 with all the people  
>>>>> working on
>>>>>     the project. so maybe if you want to join or have  
>>>>> suggestions on how to
>>>>>     get this done, feel free to respond.
>>>>>     addtitional documentation work that probably will also be  
>>>>> done:
>>>>>     improving help patches by switching to a nice pddp format.
>>>>>     creating online video tutorials, or recordings of workshops.
>>>>>     one last point: If you know of a school/university or  
>>>>> teaching center
>>>>>     that would like to get involved (for example by putting pd  
>>>>> classes on
>>>>>     their schedule or paying people do some documentation work)  
>>>>> that would
>>>>>     also help the project to be successful...
>>>>>     so far. thanks for reading through that all!
>>>>>     marius.
>>>>>
>>>>>     # this file will look slightly different for every library
>>>>>     # write everything into a database like format... (NOT YET!!!)
>>>>>     # OBJECTNAME | OPT OTHER NAME | HELPFILE-NAME | DESCRIPTION  
>>>>> | TAGS |
>>>>>     LIBRARYINFO | ARGUMENTS | INLETS/OUTLETS | EXAMPLES | SEE ALSO
>>>>>     # objectname is the string name (for example "plus" for "+")
>>>>>     # opt other name = abbreviation, +,
>>>>>     # helpfilename (can be different than object name),
>>>>>     # description = short description
>>>>>     # libraryinfo: purepd or GEM + author + licence
>>>>>     # arguments
>>>>>     # inlets/outlets
>>>>>     # examples : what this object is for...
>>>>>     # see also/similar objects
>>>>>     # junk
>>>>>     #
>>>>>     # use X coordinate to sort comments???
>>>>>
>>>>>     import re
>>>>>     import os
>>>>>
>>>>>     print 'searching all files for comments'
>>>>>
>>>>>     searchPattern = "#X text \d+ \d+ " # search for comments
>>>>>     replacePattern = searchPattern    # what can be deleted of  
>>>>> the comments
>>>>>     deleteNLPattern = r'\r'            # delete cr
>>>>>     fileExtension = ".*[.]pd$"        # files to look for
>>>>>     separator = "|"                    # separate colomns
>>>>>     separator2 = "___"                # separate junk
>>>>>     fileTo = "test_to.txt"
>>>>>
>>>>>     p = re.compile(searchPattern)
>>>>>     rep = re.compile(replacePattern)
>>>>>     nldel = re.compile(deleteNLPattern)
>>>>>     fe = re.compile (fileExtension)
>>>>>
>>>>>     f2 = open(fileTo, "w")
>>>>>
>>>>>     for fileName in os.listdir("."):
>>>>>         m = fe.search(fileName)
>>>>>         if m:                            # only if is it a pd-file
>>>>>             f = open(fileName, "r")
>>>>>             first = 1                    # suppose the first  
>>>>> entry is
>>>>>     the description
>>>>>             for line in f:
>>>>>                 m = p.search(line)     # search in line for pd- 
>>>>> comment
>>>>>     pattern
>>>>>                 if m:
>>>>>                     line = nldel.sub("",line)
>>>>>                     if first == 1:                    # help  
>>>>> needed! how
>>>>>     to sort other than by appearance? write to array?
>>>>>                         f2.write("\n" + fileName + separator)  
>>>>> #need \n
>>>>>     for every file but the first.
>>>>>                         newText = rep.sub("",line)    # this  
>>>>> should
>>>>>     delete the trailing pattern
>>>>>                         f2.write(newText[:-1])        # this  
>>>>> writes
>>>>>     without closing nl
>>>>>                         f2.write (separator)
>>>>>                         first = 0
>>>>>                     else:
>>>>>                         newText = rep.sub("",line)
>>>>>                         f2.write(newText[:-1])
>>>>>                         f2.write(separator2)
>>>>>             f.close()
>>>>>     f2.close()
>>>>>
>>>>>     #done...
>>>>>     _______________________________________________
>>>>>     PD-list at iem.at <mailto:PD-list at iem.at> mailing list
>>>>>     UNSUBSCRIBE and account-management ->
>>>>>     http://lists.puredata.info/listinfo/pd-list
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> thomas ouellet fredericks, tof at danslchamp.org
>>>>> <mailto:tof at danslchamp.org>, montreal, canada
>>>> _______________________________________________
>>>> PD-list at iem.at mailing list
>>>> UNSUBSCRIBE and account-management ->
>> http://lists.puredata.info/listinfo/pd-list
>>>
>>
>>
>>
>>
>> _______________________________________________
>> PD-list at iem.at mailing list
>> UNSUBSCRIBE and account-management -> http://lists.puredata.info/ 
>> listinfo/pd-list
>>
>
>
> _______________________________________________
> PD-list at iem.at mailing list
> UNSUBSCRIBE and account-management -> http://lists.puredata.info/ 
> listinfo/pd-list




------------------------------------------------------------------------ 
----

All mankind is of one author, and is one volume; when one man dies,  
one chapter is not torn out of the book, but translated into a better  
language; and every chapter must be so translated.... -John Donne






More information about the Pd-list mailing list