From sscholl at common-lisp.net Sat Aug 6 19:14:31 2005 From: sscholl at common-lisp.net (Stefan Scholl) Date: Sat, 6 Aug 2005 21:14:31 +0200 Subject: [cl-wiki-devel] First Release CL-WIKI 0.0.1 Message-ID: <20050806191431.GQ15712@parsec.no-spoon.de> First release CL-WIKI 0.0.1 CL-WIKI is a wiki engine for Common Lisp. It uses TBNL, CL-PPCRE, and CL-EMB. Can be used stand-alone or with Apache + mod_lisp. You can download it from http://common-lisp.net/project/cl-wiki/ or install with ASDF-Install. CL-USER> (asdf:operate 'asdf:load-op :asdf-install) CL-USER> (asdf-install:install :cl-wiki) Quick start =========== (asdf:operate 'asdf:load-op :cl-wiki) (setf *wiki-directory* "/tmp/data/") (wiki:start) Then direct your browser to http://localhost:5757/cl-wiki/Somepage ATTENTION: The first release is very simple! The Hawaiian term "wiki wiki" means "quick". A wiki isn't just quick to use, it's quick to program, too. The first wiki had only 30 lines of Perl code. This wiki was an atempt to program quick. Nevertheless it's usable for very simple tasks like taking some notes or writing down a todo list. The development will not stop there! You can discuss the direction CL-WIKI should take on cl-wiki-devel. From sscholl at common-lisp.net Sun Aug 7 18:08:01 2005 From: sscholl at common-lisp.net (Stefan Scholl) Date: Sun, 7 Aug 2005 20:08:01 +0200 Subject: [cl-wiki-devel] New Release CL-WIKI 0.0.2 Message-ID: <20050807180801.GC26978@parsec.no-spoon.de> First release CL-WIKI 0.0.2 CL-WIKI is a wiki engine for Common Lisp. It uses TBNL, CL-PPCRE, and CL-EMB. Can be used stand-alone or with Apache + mod_lisp. You can download it from http://common-lisp.net/project/cl-wiki/ or install with ASDF-Install. CL-USER> (asdf:operate 'asdf:load-op :asdf-install) CL-USER> (asdf-install:install :cl-wiki) Changes: - CL-WHO is used for forms - A page list on top and bottom of page. See special variable *WIKI-PAGE-LIST* Defaults to '((:title "Home" :link "Home") (:title "About" :link "About") (:title "Contact" :link "Contact")) The links can contain parameters and are simply appended to *WIKI-URL* - Some code cleanup (removed code duplication, etc.) - Two new wiki codes (that makes a gigantic number of three supported wiki codes now! :-) '''foo''' ==> foo ''foo'' ==> foo Which is bold and italic in most browsers. ================================================ IMPORTANT: Please upgrade CL-WHO to at least 0.6.0 and CL-EMB to at least 0.4.1 ================================================ From kevin at cavewallarts.com Tue Aug 9 02:31:27 2005 From: kevin at cavewallarts.com (Kevin Griffin) Date: Mon, 08 Aug 2005 19:31:27 -0700 Subject: [cl-wiki-devel] cl-wiki under openmcl 14.3, darwin Message-ID: <42F8157F.1070307@cavewallarts.com> I've set (setf wiki:*wiki-directory* "/tmp/data1") Made sure that directory is world writable. started the listener CL-USER> (wiki:start) # But any attempts to access http://localhost:5757/cl-wiki/ only result in a cryptic "An error has occured" Is there any way to get the listener to leave a log file of some kind? Thanks in advance, Kevin From sscholl at common-lisp.net Tue Aug 9 05:00:57 2005 From: sscholl at common-lisp.net (Stefan Scholl) Date: Tue, 9 Aug 2005 07:00:57 +0200 Subject: [cl-wiki-devel] cl-wiki under openmcl 14.3, darwin In-Reply-To: <42F8157F.1070307@cavewallarts.com> References: <42F8157F.1070307@cavewallarts.com> Message-ID: <20050809050057.GK26978@parsec.no-spoon.de> Hi! On 2005-08-08 19:31:27, Kevin Griffin wrote: > I've set (setf wiki:*wiki-directory* "/tmp/data1") > Made sure that directory is world writable. > started the listener > CL-USER> (wiki:start) > # > But any attempts to access http://localhost:5757/cl-wiki/ only result in > a cryptic > "An error has occured" > Is there any way to get the listener to leave a log file of some kind? You could use the TBNL debugging features for that: http://weitz.de/tbnl/#debug CL-WIKI doesn't have any logging functionality yet. But I think I know where the problem is: Bad documentation. Please try (setf wiki:*wiki-directory* #p"/tmp/data1/") *wiki-directory* must be set to a pathname(!) to a directory because it's used as a :DEFAULT for MAKE-PATHNAME. The way to supply a pathname to a directory can be different in your CL implementation. I've updated the quick start on the website. Will be updated in the documentation in the next release. Regards, Stefan From sscholl at common-lisp.net Tue Aug 9 05:57:38 2005 From: sscholl at common-lisp.net (Stefan Scholl) Date: Tue, 9 Aug 2005 07:57:38 +0200 Subject: [cl-wiki-devel] cl-wiki under openmcl 14.3, darwin In-Reply-To: <20050809050057.GK26978@parsec.no-spoon.de> References: <42F8157F.1070307@cavewallarts.com> <20050809050057.GK26978@parsec.no-spoon.de> Message-ID: <20050809055738.GL26978@parsec.no-spoon.de> On 2005-08-09 07:00:57, Stefan Scholl wrote: > I've updated the quick start on the website. Will be updated in > the documentation in the next release. Or better: The next release should have a config file. To prevent this to end in an extreme SETF orgy just to set up the wiki. :-) From sscholl at common-lisp.net Tue Aug 9 06:16:20 2005 From: sscholl at common-lisp.net (Stefan Scholl) Date: Tue, 9 Aug 2005 08:16:20 +0200 Subject: [cl-wiki-devel] cl-wiki under openmcl 14.3, darwin In-Reply-To: <20050809050057.GK26978@parsec.no-spoon.de> Message-ID: <20050809061620.GN26978@parsec.no-spoon.de> On 2005-08-09 07:00:57, Stefan Scholl wrote: > You could use the TBNL debugging features for that: > http://weitz.de/tbnl/#debug Or set *show-lisp-errors-p* http://weitz.de/tbnl/#*show-lisp-errors-p* From kevin at cavewallarts.com Tue Aug 9 19:36:54 2005 From: kevin at cavewallarts.com (Kevin Griffin) Date: Tue, 09 Aug 2005 12:36:54 -0700 Subject: [cl-wiki-devel] cl-wiki under openmcl 14.3, darwin Message-ID: <42F905D6.6090806@cavewallarts.com> I should have thought of the #p thing. (setf *show-lisp-errors-p* T) hasn't shown any errors yet, while trying to access 5757 So it looks like I'll be trying out the TBNL debug feature you recommended. I don't mind the orgy of setf. It reminds me of a .emacs :) I know that Brian Mastenbrook used cl-trivial-configuration-parser for cl-blog, but that was his way of doing it. From sscholl at common-lisp.net Thu Aug 11 07:12:53 2005 From: sscholl at common-lisp.net (Stefan Scholl) Date: Thu, 11 Aug 2005 09:12:53 +0200 Subject: [cl-wiki-devel] New Release CL-WIKI 0.0.3 Message-ID: <20050811071253.GZ26978@parsec.no-spoon.de> First release CL-WIKI 0.0.3 CL-WIKI is a wiki engine for Common Lisp. It uses TBNL, CL-PPCRE, and CL-EMB. Can be used stand-alone or with Apache + mod_lisp. You can download it from http://common-lisp.net/project/cl-wiki/ or install with ASDF-Install. CL-USER> (asdf:operate 'asdf:load-op :asdf-install) CL-USER> (asdf-install:install :cl-wiki) Changes: - Changed ESCAPE-FOR-HTML was very slow and is now using code from Edi Weitz (Thanks!) - restored the feature to edit non existing pages automatically (Now the quick start should work again as expected) From kevin at cavewallarts.com Thu Aug 11 08:04:52 2005 From: kevin at cavewallarts.com (Kevin Griffin) Date: Thu, 11 Aug 2005 01:04:52 -0700 Subject: [cl-wiki-devel] New Release CL-WIKI 0.0.3 In-Reply-To: <20050811071253.GZ26978@parsec.no-spoon.de> References: <20050811071253.GZ26978@parsec.no-spoon.de> Message-ID: <42FB06A4.4050107@cavewallarts.com> This is great! I've tested it against SBCL 0.8.16, and it's working beautifully! small documentation suggestion: instead of (setf *wiki-directory* #p"/tmp/data/") ;; Pathname of a directory! (setf wiki:*wiki-directory* #p"/tmp/data/") ;; Pathname of a directory! I'll be testing it against openmcl shortly. Kevin Stefan Scholl wrote: > First release CL-WIKI 0.0.3 > > CL-WIKI is a wiki engine for Common Lisp. It uses TBNL, CL-PPCRE, > and CL-EMB. Can be used stand-alone or with Apache + mod_lisp. > > > You can download it from > http://common-lisp.net/project/cl-wiki/ > or install with ASDF-Install. > > CL-USER> (asdf:operate 'asdf:load-op :asdf-install) > CL-USER> (asdf-install:install :cl-wiki) > > > Changes: > > - Changed ESCAPE-FOR-HTML > was very slow and is now using code from Edi Weitz (Thanks!) > > - restored the feature to edit non existing pages automatically > (Now the quick start should work again as expected) > > _______________________________________________ > cl-wiki-devel mailing list > cl-wiki-devel at common-lisp.net > http://common-lisp.net/cgi-bin/mailman/listinfo/cl-wiki-devel From kevin at cavewallarts.com Thu Aug 11 10:08:32 2005 From: kevin at cavewallarts.com (Kevin Griffin) Date: Thu, 11 Aug 2005 03:08:32 -0700 Subject: [cl-wiki-devel] New Release CL-WIKI 0.0.3 In-Reply-To: <42FB06A4.4050107@cavewallarts.com> References: <20050811071253.GZ26978@parsec.no-spoon.de> <42FB06A4.4050107@cavewallarts.com> Message-ID: <42FB23A0.7060904@cavewallarts.com> Confirmed functioning with Openmcl 0.14.3 Kevin Griffin wrote: > This is great! > I've tested it against SBCL 0.8.16, and it's working beautifully! > > small documentation suggestion: > instead of > (setf *wiki-directory* #p"/tmp/data/") ;; Pathname of a directory! > > (setf wiki:*wiki-directory* #p"/tmp/data/") ;; Pathname of a directory! > > I'll be testing it against openmcl shortly. > Kevin > Stefan Scholl wrote: > >> First release CL-WIKI 0.0.3 >> >> CL-WIKI is a wiki engine for Common Lisp. It uses TBNL, CL-PPCRE, >> and CL-EMB. Can be used stand-alone or with Apache + mod_lisp. >> >> >> You can download it from >> http://common-lisp.net/project/cl-wiki/ >> or install with ASDF-Install. >> >> CL-USER> (asdf:operate 'asdf:load-op :asdf-install) >> CL-USER> (asdf-install:install :cl-wiki) >> >> >> Changes: >> >> - Changed ESCAPE-FOR-HTML >> was very slow and is now using code from Edi Weitz (Thanks!) >> >> - restored the feature to edit non existing pages automatically >> (Now the quick start should work again as expected) >> >> _______________________________________________ >> cl-wiki-devel mailing list >> cl-wiki-devel at common-lisp.net >> http://common-lisp.net/cgi-bin/mailman/listinfo/cl-wiki-devel > > > _______________________________________________ > cl-wiki-devel mailing list > cl-wiki-devel at common-lisp.net > http://common-lisp.net/cgi-bin/mailman/listinfo/cl-wiki-devel From kevin at cavewallarts.com Wed Aug 17 08:43:21 2005 From: kevin at cavewallarts.com (Kevin Griffin) Date: Wed, 17 Aug 2005 01:43:21 -0700 Subject: [cl-wiki-devel] Simple script for the starting and stopping of cl-wiki or cl-blog Message-ID: <4302F8A9.8050101@cavewallarts.com> http://ian.casa.cavewallarts.com/sbcl/ From sscholl at common-lisp.net Wed Aug 17 17:33:45 2005 From: sscholl at common-lisp.net (Stefan Scholl) Date: Wed, 17 Aug 2005 19:33:45 +0200 Subject: [cl-wiki-devel] Simple script for the starting and stopping of cl-wiki or cl-blog In-Reply-To: <4302F8A9.8050101@cavewallarts.com> Message-ID: <20050817173345.GI26978@parsec.no-spoon.de> Hi Kevin and list! On 2005-08-17 01:43:21, Kevin Griffin wrote: > http://ian.casa.cavewallarts.com/sbcl/ Perfect. You can read minds. I wanted to add a simple start script in the next release. But this one is better. One thing: In the next release a config file will be read from the current directory. I think the current directory is a nice place for web application specific configurations. But I could add a parameter to WIKI:START. And you could add a directory for the script to change into. By the way: I've migrated all of CL-WIKI from Subversion to darcs. A very nice version control for distributed development. In the future there will be a development and a stable repository on CL-WIKI's project page on common-lisp.net Then every "in the next release" statement of mine can be tested at own risk. :-) Regards, Stefan From sscholl at common-lisp.net Wed Aug 17 17:34:08 2005 From: sscholl at common-lisp.net (Stefan Scholl) Date: Wed, 17 Aug 2005 19:34:08 +0200 Subject: [cl-wiki-devel] New Release CL-WIKI 0.0.3 In-Reply-To: <42FB23A0.7060904@cavewallarts.com> Message-ID: <20050817173408.GJ26978@parsec.no-spoon.de> On 2005-08-11 03:08:32, Kevin Griffin wrote: > Confirmed functioning with Openmcl 0.14.3 Thanks! I had to decide between a new car and a Mac. Maybe I'm not geek enough but I've chosen the new car. :-) From kevin at cavewallarts.com Thu Aug 25 17:33:17 2005 From: kevin at cavewallarts.com (Kevin Griffin) Date: Thu, 25 Aug 2005 10:33:17 -0700 Subject: [cl-wiki-devel] cl-wiki: goals for development? Message-ID: <430E00DD.5040709@cavewallarts.com> With yet another common lisp based wiki being released later this year (kiwi), I started thinking about how we'd like to "position" cl-wiki. One thing that I've liked about cl-wiki, as oppposed to cliki, is that it's not dependent on SBCL internals. Maybe we can emphasize cl-wiki's portability. I know it works under OpenMCL, and I'll be testing it under a couple of others, as time permits. Another option is to aim towards responsiveness or smallness of memory footprint. What are anyone's thoughts on this? What do we want to see in cl-wiki? Also- Stefan - what repository will have the development version of cl-wiki? From kevin at cavewallarts.com Thu Aug 25 17:43:45 2005 From: kevin at cavewallarts.com (Kevin Griffin) Date: Thu, 25 Aug 2005 10:43:45 -0700 Subject: [cl-wiki-devel] Simple script for the starting and stopping of cl-wiki or cl-blog In-Reply-To: <20050817173345.GI26978@parsec.no-spoon.de> References: <20050817173345.GI26978@parsec.no-spoon.de> Message-ID: <430E0351.7050501@cavewallarts.com> Stefan Scholl wrote: > Hi Kevin and list! > > On 2005-08-17 01:43:21, Kevin Griffin wrote: > >>http://ian.casa.cavewallarts.com/sbcl/ > > > Perfect. You can read minds. I wanted to add a simple start > script in the next release. But this one is better. This script, written by Ian Clelland - was designed for unattended startup, at boot time. Also, the lispworld we are using in that case comes with wiki:*wiki-directory* and wiki:*wiki-template-directory* already set, so that it need not be set by the script. This is probably not optimal for testing, nor is it the most flexible of solutions. > > One thing: In the next release a config file will be read from > the current directory. > I'm looking forward to it. > I think the current directory is a nice place for web application > specific configurations. But I could add a parameter to > WIKI:START. And you could add a directory for the script to > change into. > > Sure thing. From kevin at cavewallarts.com Wed Aug 31 10:38:37 2005 From: kevin at cavewallarts.com (Kevin Griffin) Date: Wed, 31 Aug 2005 03:38:37 -0700 Subject: [cl-wiki-devel] Graphics to glorify cl-wiki Message-ID: <431588AD.5090104@cavewallarts.com> http://kevin.casa.cavewallarts.com/wiki-logo.html From kevin at cavewallarts.com Wed Aug 31 17:53:30 2005 From: kevin at cavewallarts.com (Kevin Griffin) Date: Wed, 31 Aug 2005 10:53:30 -0700 Subject: [cl-wiki-devel] Sites powered by cl-wiki Message-ID: <4315EE9A.7020400@cavewallarts.com> http://research.cavewallarts.com/TOC2/Home For research into the TOC2 protocol, used by AIM clients. From sscholl at common-lisp.net Wed Aug 31 18:33:58 2005 From: sscholl at common-lisp.net (Stefan Scholl) Date: Wed, 31 Aug 2005 20:33:58 +0200 Subject: [cl-wiki-devel] Graphics to glorify cl-wiki In-Reply-To: <431588AD.5090104@cavewallarts.com> References: <431588AD.5090104@cavewallarts.com> Message-ID: <20050831183358.GB11447@parsec.no-spoon.de> On 2005-08-31 03:38:37, Kevin Griffin wrote: > http://kevin.casa.cavewallarts.com/wiki-logo.html Incredible! I haven't dreamed about it that I could find supporters so early in the project! All the essays and articles about open source development state that a project have to reach a certain stage of usefulness before it gets used and supported by other people than just the developer himself. It seems that there's a demand for a Common Lisp Wiki. Too bad I had a problem with my time management (nice euphemism) the last few days. Now I feel a bit guilty about it. From sscholl at common-lisp.net Wed Aug 31 18:39:39 2005 From: sscholl at common-lisp.net (Stefan Scholl) Date: Wed, 31 Aug 2005 20:39:39 +0200 Subject: [cl-wiki-devel] Simple script for the starting and stopping of cl-wiki or cl-blog In-Reply-To: <430E0351.7050501@cavewallarts.com> References: <20050817173345.GI26978@parsec.no-spoon.de> <430E0351.7050501@cavewallarts.com> Message-ID: <20050831183939.GC11447@parsec.no-spoon.de> On 2005-08-25 10:43:45, Kevin Griffin wrote: > Stefan Scholl wrote: > >One thing: In the next release a config file will be read from > >the current directory. > > I'm looking forward to it. I'm sorry you need a little more patience than expected (by myself). It's only a little release but it have to wait for a few days more. The next few steps are: 1.) Make this small(!) release 2.) Figure out some nice way to store the wiki pages. Some meta data is needed and it should be possible to integrate typical wiki features like versioning and diffs. 3.) Relasee it 4.) Bring up the darcs repositories. One for stable releases and one for development. The project is alive and will be kicking, I'm sure. :-) From clelland at gmail.com Wed Aug 31 23:48:10 2005 From: clelland at gmail.com (Ian Clelland) Date: Wed, 31 Aug 2005 16:48:10 -0700 Subject: [cl-wiki-devel] Wiki transforms Message-ID: I don't know whether this will be considered useful or harmful, but I got frustrated yesterday with my inability to create links to off-site resources (other web sites, email addresses, etc), and to be able to have the text of a hyperlink show anything other than the exact page name. So, modelling things after Wikipedia, I've added the following simple replacement patterns: ;; Allow pipe-separated page name and text description ("\\[\\[([^]\">|]*?)\\|([^]\">]*?)\\]\\]" . "\\2") ;; Standard [[ ]] wiki links ("\\[\\[(.*?)\\]\\]" . "\\1") ;; Use single [ ] for external links. Only allow the specified protocols ("\\[(http|ftp|mailto|gopher):([^\">].*?)\\]" . "\\1:\\2") (after getting rid of *wiki-url* in links, I moved the complex wiki-linking code into simple-replace, and complex-translate does nothing) With these replacements, I can write wiki code like this: You should really read [[OtherDocument|this other thing]]. Other information is available at this site: [http://www.example.com] The addition of classes to external links let me visually distinguish them with CSS, and there is deliberately no way for someone to make an external link that looks like a wikilink, to prevent some of the more heinous forms of wiki-spam. Regards, Ian Clelland From clelland at gmail.com Wed Aug 31 23:32:17 2005 From: clelland at gmail.com (Ian Clelland) Date: Wed, 31 Aug 2005 16:32:17 -0700 Subject: [cl-wiki-devel] Living without *wiki-url* Message-ID: I've been working with Kevin Griffin on a couple of cl-wiki sites for a few weks now, and I've found that, more often than not, the *wiki-url* variable has been getting in my way. The problem arises out of the way I am integrating cl-wiki with apache -- I'm using proxy and rewrite rules to place a wiki in some directory in a web site (not necessarily /cl-wiki/), and I don't want to have to change that variable if I decide to move the wiki to a different directory (which involves modifying the source code, and re-exporting the lisp world). However, since the '/' character does not seem to be allowed in wiki names, the wiki is always a flat namespace, and so relative links will work in all situations. The only change needed to make this work is a redefinition of current-page to: (defun current-page () "Extracts the current page from the URL." (let ((url (tbnl:script-name))) (subseq url (+ 1 (position #\/ url :from-end T))))) and then the *wiki-url* prefix can be removed from all of the links in wiki.lisp as well as the templates. There's a working example up at http://research.cavewallarts.com/TOC2/ ; I'll have a diff available soon. Incidentally, the apache configuration I'm using in this case looks like this: Order deny,allow Allow from all RewriteEngine On RewriteRule ^/TOC2$ /TOC2/ [R] RewriteRule ^/TOC2/$ /TOC2/Home [R] RewriteRule ^/TOC2/(.*) http://127.0.0.1:5757/cl-wiki/$1 [L,P] Regards, Ian Clelland