From: Jeff D. <da...@da...> - 2001-08-29 16:33:04
|
On Aug 28, 2001, Steve Wainstead said: > > (defun my-php-mode-hook-func () > > (c-set-mode "gnu") > > (setq tab-width 4 .... I really dislike this tab-width = 4 thing. It results in the source code looking mangled when viewed by viewers which think the tabs stops should be every eight columns (like most of them.) Could we change our "coding standard" so that it departs from PEARs in this one respect? Jeff BTW, I've been working feverishly on a new database API. It's changed somewhat compared to what's outlined in the PhpWikiWiki. A brief synopsis, to whet your appetite: The basic model now uses three basic objects: WikiDatabase, WikiPage, and WikiPageRevision. A WikiDatabase is an infinite set of WikiPages. All possible pages are always present in a WikiDatabase. (Pages which have not been explicitly initialized have only one revision, which contains some default content,.e.g. "Describe [PageName] here.") As such WikiDatabases have read-only semantics. About all you can do with them is fetch WikiPages from them. (Of course, there are various search methods which can be used to finds sets of WikiPages.) You never have to add pages to a WikiDatabase, since they're all already there. WikiPages have methods to get and set page-level meta-data (e.g. is the page locked?). Additionally, WikiPages are containers for WikiPageRevisions. A WikiPage always contains at least one WikiPageRevision: the default revision (e.g. "Describe [ThisPage] here.") There are methods to get WikiPageRevisions from WikiPages, as well as methods to create new revisions and to delete old ones. WikiPageRevisions have methods to access the page content, as well as revision-level meta-data (e.g. author, revision time). WikiPageRevisions have read-only semantics: you can not modify a revision, you may only create new ones (and delete old ones). The (PEAR::DB-based) MySQL backend is roughly working. I hope to have a dba based backend working by the end of the week, at which time I'll check my hacks into the CVS so you can look at it. As these are major changes, I think I'll check them into a new branch ('Jeff_Hacks_Again_Branch' ?) to give you all a chance to veto the changes if you don't like them before they're dropped into the main branch. |