|
Home Pages Pidgin Azarennya (S|N) Mac Thesaurus Reference ToDo Colino Food Local Blogs: BadIdea Rachel RIAA Cult: Clambake Infidels Fi: Arda StarTrek Trek/Wars Film: IMDB D Harry Jabootu Kyle Fun: Agony ICanHas? ObSkills Snopes Lang: ZBB Vreleksá AwkWords Omniglot Scriptorium More... Local: Maps Map MyWeb Metro (map) FC Weather GoWhere? GGWash DC Arlington Reston Beyond Bacon Pix: Deviant Places Renderosity Blender Artists Pol: Anchoress Lizards Lucianne Strata WAwakes Sci: SmallThings Darwin AntiEvo Skeptics EvC BAUT Physics /.Sci Junk Panda Pharyngula Mags AmSci NatG Space X86: OSX86 ArsTech OSNews TUAW Dev PowWeb PHP Webmaster Coding Walkers Prog: PHP JS Toolbox Unobt Compress RegExp (test) Lint SQL Cocoa Builder Dev Apple BBS Userland Faqin Science/Tech: Engadget Thunderbolts Icecap Centauri NewSci Gizmodo co2sci ClimateDebate SciDaily Nrich NatGeog Math CreatClaims GoodBadMath CurrentEvents: OrigSig Flamingo FlopAces ImmigProf ~J~ MyVRWC NewsGroper Pal2Pal Sanity Simon TCS Toldjah Blogs... Tools: Calculator AsciiArt XMLVal FunStuff: Pictures: Photobucket (eg Dubai) Videos: YouTube Subtitler InterestingThings: LibraryThing FlashCards GoogleDocs Wowio Bubbl.us Colemak Audible PodioBooks WonderfulInfo BooksOnline AboutUs.org |
Nini /
Nini(NOTE: It might be better to rewrite Nini so that a record can span multiple lines. I decided that I want to put ASCII art into a record, and that's hard to do with the line-oriented setup here. The setup might be to start a record with a directive (:record tag1 tag2 ... :) and end it with the next (:record:) or with (:recordend:).) Why did I write Nini? See my Rationale. How does this work? See some examples to give you a feel for how Nini works. How do you install Nini? Here's how. Note: Nini does not do what ZAPdata does. ZAPdata is a full-blown database engine for creating forms and generating custom reports. Nini was designed to work with scraps of freeform text. Overview"Nini" is a plugin script or "recipe" to let you do queries on (more-or-less) freeform data in PmWiki. The basic concept is that you have two pages in PmWiki -- a database page, where you keep your data, and an output page, which is any page you want to display data from your database page. Your database pageThe database page can actually contain a mix of data lines (or "records") and other lines, so you can freely add whatever comments or section breaks you like to the database page. A data line has two parts: tags in parentheses, at the beginning of the line, and any text after the tags. Nini won't gather data from any line not set up like this. The text, of course, can contain any markup that you can put into any other line, including formatted text, links, images, and even line breaks (if you use the [[<<]] code). Just be aware that everything has to fit on one line. When Nini performs a query, it checks the tags of each record. If the record has the right combination of tags, Nini displays the text -- not the tags -- on the output page. (See SettingUpData for more details.) Your output pageYou "query" for records by opening another page in the editor and adding a (:nini:) directive where you want the data to appear. The directive lets you specify the name of your database page and the tags that each record needs to have before it is displayed on your output page. When you close the editor and view the page, Nini will have inserted into your page some text pulled from your database page.
(See RetrievingData for more details.) |