From andytynan at gmail.com Tue Aug 7 03:47:56 2012 From: andytynan at gmail.com (Andy Tynan) Date: Tue, 7 Aug 2012 08:47:56 +0100 Subject: [Moin-user] Corrupt pages need removing Message-ID: Hi all, Some parts of my wiki seem to be corrupted (see below error) the rest continues to work fine. It happened after a server crash, and subsequent filesystem recovery. Can anyone suggest how I can remove only the offending pages? Basically I'm not sure which file does what, what can be removed and what cannot. Thanks, Andy Tynan. [Tue Aug 07 08:36:24 2012] [error] 2012-08-07 08:36:24,183 ERROR MoinMoin.wsgiapp:293 An exception has occurred [http://mydomain/wiki/WorkLog]. [Tue Aug 07 08:36:24 2012] [error] Traceback (most recent call last): [Tue Aug 07 08:36:24 2012] [error] File "/usr/lib/python2.6/site-packages/MoinMoin/wsgiapp.py", line 282, in __call__ [Tue Aug 07 08:36:24 2012] [error] response = run(context) [Tue Aug 07 08:36:24 2012] [error] File "/usr/lib/python2.6/site-packages/MoinMoin/wsgiapp.py", line 88, in run [Tue Aug 07 08:36:24 2012] [error] response = dispatch(request, context, action_name) [Tue Aug 07 08:36:24 2012] [error] File "/usr/lib/python2.6/site-packages/MoinMoin/wsgiapp.py", line 136, in dispatch [Tue Aug 07 08:36:24 2012] [error] response = handle_action(context, pagename, action_name) [Tue Aug 07 08:36:24 2012] [error] File "/usr/lib/python2.6/site-packages/MoinMoin/wsgiapp.py", line 195, in handle_action [Tue Aug 07 08:36:24 2012] [error] handler(context.page.page_name, context) [Tue Aug 07 08:36:24 2012] [error] File "/usr/lib/python2.6/site-packages/MoinMoin/action/__init__.py", line 268, in do_show [Tue Aug 07 08:36:24 2012] [error] content_only=content_only, [Tue Aug 07 08:36:24 2012] [error] File "/usr/lib/python2.6/site-packages/MoinMoin/Page.py", line 1025, in send_page [Tue Aug 07 08:36:24 2012] [error] body = self.data [Tue Aug 07 08:36:24 2012] [error] File "/usr/lib/python2.6/site-packages/MoinMoin/Page.py", line 246, in get_data [Tue Aug 07 08:36:24 2012] [error] self.__meta, self.__data = wikiutil.get_processing_instructions(self.body) [Tue Aug 07 08:36:24 2012] [error] File "/usr/lib/python2.6/site-packages/MoinMoin/Page.py", line 225, in get_body [Tue Aug 07 08:36:24 2012] [error] text = f.read() [Tue Aug 07 08:36:24 2012] [error] File "/usr/lib/python2.6/codecs.py", line 671, in read [Tue Aug 07 08:36:24 2012] [error] return self.reader.read(size) [Tue Aug 07 08:36:24 2012] [error] File "/usr/lib/python2.6/codecs.py", line 477, in read [Tue Aug 07 08:36:24 2012] [error] newchars, decodedbytes = self.decode(data, self.errors)*[Tue Aug 07 08:36:24 2012] [error] UnicodeDecodeError: 'utf8' codec can't decode byte 0xc8 in position 0: invalid continuation byte* -------------- next part -------------- An HTML attachment was scrubbed... URL: From eric at tibco.com Tue Aug 7 13:17:50 2012 From: eric at tibco.com (Eric Johnson) Date: Tue, 7 Aug 2012 10:17:50 -0700 Subject: [Moin-user] Corrupt pages need removing In-Reply-To: References: Message-ID: <50214DBE.1050103@tibco.com> Try cleaning out your cache? http://moinmo.in/HelpOnMoinCommand#moin_..._maint_cleancache_... -Eric. On 8/7/12 12:47 AM, Andy Tynan wrote: > Hi all, > > Some parts of my wiki seem to be corrupted (see below error) the rest > continues to work fine. > It happened after a server crash, and subsequent filesystem recovery. > > Can anyone suggest how I can remove only the offending pages? > Basically I'm not sure which file does what, what can be removed and > what cannot. > > Thanks, > Andy Tynan. > > [Tue Aug 07 08:36:24 2012] [error] 2012-08-07 08:36:24,183 ERROR MoinMoin.wsgiapp:293 An exception has occurred [http://mydomain/wiki/WorkLog]. > [Tue Aug 07 08:36:24 2012] [error] Traceback (most recent call last): > [Tue Aug 07 08:36:24 2012] [error] File "/usr/lib/python2.6/site-packages/MoinMoin/wsgiapp.py", line 282, in __call__ > [Tue Aug 07 08:36:24 2012] [error] response = run(context) > [Tue Aug 07 08:36:24 2012] [error] File "/usr/lib/python2.6/site-packages/MoinMoin/wsgiapp.py", line 88, in run > [Tue Aug 07 08:36:24 2012] [error] response = dispatch(request, context, action_name) > [Tue Aug 07 08:36:24 2012] [error] File "/usr/lib/python2.6/site-packages/MoinMoin/wsgiapp.py", line 136, in dispatch > [Tue Aug 07 08:36:24 2012] [error] response = handle_action(context, pagename, action_name) > [Tue Aug 07 08:36:24 2012] [error] File "/usr/lib/python2.6/site-packages/MoinMoin/wsgiapp.py", line 195, in handle_action > [Tue Aug 07 08:36:24 2012] [error] handler(context.page.page_name, context) > [Tue Aug 07 08:36:24 2012] [error] File "/usr/lib/python2.6/site-packages/MoinMoin/action/__init__.py", line 268, in do_show > [Tue Aug 07 08:36:24 2012] [error] content_only=content_only, > [Tue Aug 07 08:36:24 2012] [error] File "/usr/lib/python2.6/site-packages/MoinMoin/Page.py", line 1025, in send_page > [Tue Aug 07 08:36:24 2012] [error] body = self.data > [Tue Aug 07 08:36:24 2012] [error] File "/usr/lib/python2.6/site-packages/MoinMoin/Page.py", line 246, in get_data > [Tue Aug 07 08:36:24 2012] [error] self.__meta, self.__data = wikiutil.get_processing_instructions(self.body) > [Tue Aug 07 08:36:24 2012] [error] File "/usr/lib/python2.6/site-packages/MoinMoin/Page.py", line 225, in get_body > [Tue Aug 07 08:36:24 2012] [error] text = f.read() > [Tue Aug 07 08:36:24 2012] [error] File "/usr/lib/python2.6/codecs.py", line 671, in read > [Tue Aug 07 08:36:24 2012] [error] return self.reader.read(size) > [Tue Aug 07 08:36:24 2012] [error] File "/usr/lib/python2.6/codecs.py", line 477, in read > [Tue Aug 07 08:36:24 2012] [error] newchars, decodedbytes = self.decode(data, self.errors) > *[Tue Aug 07 08:36:24 2012] [error] UnicodeDecodeError: 'utf8' codec can't decode byte 0xc8 in position 0: invalid continuation byte* > > > ------------------------------------------------------------------------------ > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > > > _______________________________________________ > Moin-user mailing list > Moin-user at lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/moin-user From tw-public at gmx.de Wed Aug 8 04:48:55 2012 From: tw-public at gmx.de (Thomas Waldmann) Date: Wed, 08 Aug 2012 10:48:55 +0200 Subject: [Moin-user] Corrupt pages need removing In-Reply-To: References: Message-ID: <1344415735.2310.11.camel@x300.localdomain> > Can anyone suggest how I can remove only the offending pages? Hmm, it is a utf-8 decoding error. Did maybe somebody manage to put non-utf-8 content on that page? (it only makes a difference for non-ascii characters) > Basically I'm not sure which file does what, what can be removed and > what cannot. Look into the directory pointed to by data_dir (see wiki config). There is one subdirectory per page, that has "current" (points to current revision, required), a "edit-log" (metadata about revisions, required) and a subdirectory with the revision files (at least the rev pointed to by "current" is required). There might be also a subdirectory "attachments", which has the current attachments (not revisioned). There might be also a "cache" directory, which can be deleted (or cleaned by "moin ... maint cleancache". Directly in , there is also a global "edit-log" (needed for RecentChanges page, you can kill it if RecentChanges may start from scratch after that) and "event-log" (optional). The log files are text files and can be (carefully) edited. Your editor need to preserve TABs and line-endings as they are. Make a backup first. From andytynan at gmail.com Sun Aug 12 04:24:02 2012 From: andytynan at gmail.com (Andy Tynan) Date: Sun, 12 Aug 2012 09:24:02 +0100 Subject: [Moin-user] Corrupt pages need removing In-Reply-To: <1344415735.2310.11.camel@x300.localdomain> References: <1344415735.2310.11.camel@x300.localdomain> Message-ID: <70F3B123-9059-4D03-813C-5DDDC9814A08@gmail.com> Hi Thomas and Eric, Many thanks for the info, it was the kick-start I needed. With much patience and all the usual gnu utils, I found the corrupted revisions and edit-log files and performed some vi surgery. My use of categories and FullSearch meant that any corruption anywhere broke this page. All working now, so thanks again! ----- Andy On 8 Aug 2012, at 09:48, Thomas Waldmann wrote: > > >> Can anyone suggest how I can remove only the offending pages? > > Hmm, it is a utf-8 decoding error. Did maybe somebody manage to put > non-utf-8 content on that page? (it only makes a difference for > non-ascii characters) > >> Basically I'm not sure which file does what, what can be removed and >> what cannot. > > Look into the directory pointed to by data_dir (see wiki config). > > There is one subdirectory per page, that has "current" (points to > current revision, required), a "edit-log" (metadata about revisions, > required) and a subdirectory with the revision files (at least the rev > pointed to by "current" is required). There might be also a subdirectory > "attachments", which has the current attachments (not revisioned). > There might be also a "cache" directory, which can be deleted (or > cleaned by "moin ... maint cleancache". > > Directly in , there is also a global "edit-log" (needed for > RecentChanges page, you can kill it if RecentChanges may start from > scratch after that) and "event-log" (optional). > > The log files are text files and can be (carefully) edited. Your editor > need to preserve TABs and line-endings as they are. > > Make a backup first. > > > > > ------------------------------------------------------------------------------ > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Moin-user mailing list > Moin-user at lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/moin-user From kai at aplteam.com Mon Aug 27 14:59:51 2012 From: kai at aplteam.com (Kai Jaeger) Date: Mon, 27 Aug 2012 19:59:51 +0100 Subject: [Moin-user] Moin Message-ID: I experimented recently with newaccount.py I'd taken a copy of the original file. When I was ready I deleted newaccount.py and renamed newaccount.py.old to newaccount.py. I then restarted Apache. Now I keep getting Internal Server Error 500. First I thought I'd made a mistake regarding the file but a comparison with a backup taken just before my experiments confirmed that the files are identical. Further investigation showed that the reason seems to be that the file newaccount.pyc has not been updated. So I deleted the file and restarted Apache. Still a 500. Worse: there is no file newaccount.pyc anymore! I then rebooted the machine - still 500, and no newaccount.pyc! Advice is very welcome. Kai From lists at sumpfralle.de Mon Aug 27 20:22:32 2012 From: lists at sumpfralle.de (Lars Kruse) Date: Tue, 28 Aug 2012 02:22:32 +0200 Subject: [Moin-user] Moin In-Reply-To: References: Message-ID: <20120828022232.348700f7@erker.lan> Hi Kai, > Now I keep getting Internal Server Error 500. It is not easy to guess the reasons for http status 500. Just take a look at your webserver's error log file (e.g. /var/log/apache2/error.log). You will find the complete error message at the end of the log. > Further investigation showed that the reason seems to be that the file > newaccount.pyc has not been updated. So I deleted the file and > restarted Apache. Still a 500. Worse: there is no file newaccount.pyc > anymore! You do not need to worry about missing pyc files. These files serve merely as a cache for byte-compiled python code. Python generates these files whenever it tries to load a python module. The absence of these files just indicate that the webserver process owner (e.g. "www-data") does not have the permission to create files in that specific directory. This is ok. Hope this helps, Lars From eric at tibco.com Mon Aug 27 23:51:57 2012 From: eric at tibco.com (Eric Johnson) Date: Tue, 28 Aug 2012 03:51:57 +0000 Subject: [Moin-user] Moin In-Reply-To: References: Message-ID: It is very likely that restarting Apache reloaded other software that Moin depends upon, and that perhaps you updated a dependency of MoinMoin without realizing it. The exact error message in the Apache log matters. As pointed out in another email, the specific file newaccount.py is not necessarily the problem. Eric On Aug 27, 2012, at 12:27 PM, "Kai Jaeger" wrote: > I experimented recently with newaccount.py > > I'd taken a copy of the original file. When I was ready I deleted > newaccount.py and renamed newaccount.py.old to newaccount.py. > > I then restarted Apache. > > Now I keep getting Internal Server Error 500. > > First I thought I'd made a mistake regarding the file but a comparison > with a backup taken just before my experiments confirmed that the > files are identical. > > Further investigation showed that the reason seems to be that the file > newaccount.pyc has not been updated. So I deleted the file and > restarted Apache. Still a 500. Worse: there is no file newaccount.pyc > anymore! > > I then rebooted the machine - still 500, and no newaccount.pyc! > > Advice is very welcome. > > > Kai > > ------------------------------------------------------------------------------ > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Moin-user mailing list > Moin-user at lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/moin-user From kai at aplteam.com Tue Aug 28 03:30:05 2012 From: kai at aplteam.com (Kai Jaeger) Date: Tue, 28 Aug 2012 08:30:05 +0100 Subject: [Moin-user] Moin In-Reply-To: References: Message-ID: Lars and Eric, Thanks for that. I am not a Python programmer. However, I always assumed that when ones changes a py script then after the next execution there will be either a new or an updated pyc script?! Anyway, the log file is telling something unexpected: ----------------------- [Tue Aug 28 07:33:37 2012] [error] Traceback (most recent call last): [Tue Aug 28 07:33:37 2012] [error] File "C:\\Python26\\lib\\site-packages\\MoinMoin\\wsgiapp.py", line 282, in __call__ [Tue Aug 28 07:33:37 2012] [error] response = run(context) [Tue Aug 28 07:33:37 2012] [error] File "C:\\Python26\\lib\\site-packages\\MoinMoin\\wsgiapp.py", line 88, in run [Tue Aug 28 07:33:37 2012] [error] response = dispatch(request, context, action_name) [Tue Aug 28 07:33:37 2012] [error] File "C:\\Python26\\lib\\site-packages\\MoinMoin\\wsgiapp.py", line 136, in dispatch [Tue Aug 28 07:33:37 2012] [error] response = handle_action(context, pagename, action_name) [Tue Aug 28 07:33:37 2012] [error] File "C:\\Python26\\lib\\site-packages\\MoinMoin\\wsgiapp.py", line 185, in handle_action [Tue Aug 28 07:33:37 2012] [error] handler = action.getHandler(context, action_name) [Tue Aug 28 07:33:37 2012] [error] File "C:\\Python26\\lib\\site-packages\\MoinMoin\\action\\__init__.py", line 341, in getHandler [Tue Aug 28 07:33:37 2012] [error] handler = wikiutil.importPlugin(cfg, "action", action, identifier) [Tue Aug 28 07:33:37 2012] [error] File "C:\\Python26\\lib\\site-packages\\MoinMoin\\wikiutil.py", line 1057, in importPlugin [Tue Aug 28 07:33:37 2012] [error] return importBuiltinPlugin(kind, name, function) [Tue Aug 28 07:33:37 2012] [error] File "C:\\Python26\\lib\\site-packages\\MoinMoin\\wikiutil.py", line 1081, in importBuiltinPlugin [Tue Aug 28 07:33:37 2012] [error] return importNameFromPlugin(moduleName, function) [Tue Aug 28 07:33:37 2012] [error] File "C:\\Python26\\lib\\site-packages\\MoinMoin\\wikiutil.py", line 1094, in importNameFromPlugin [Tue Aug 28 07:33:37 2012] [error] module = __import__(moduleName, globals(), {}, fromlist) [Tue Aug 28 07:33:37 2012] [error] File "C:\\Python26\\lib\\site-packages\\MoinMoin\\action\\newaccount.py", line 154 [Tue Aug 28 07:33:37 2012] [error] return unicode(ret) [Tue Aug 28 07:33:37 2012] [error] ^ [Tue Aug 28 07:33:37 2012] [error] IndentationError: unexpected indent [Tue Aug 28 07:33:37 2012] [error] [client 62.255.207.52] mod_wsgi (pid=2944): Exception occurred processing WSGI script 'D:/Wikis/config/moin.wsgi'., referer: http://aplwiki.com/PhraseBook/ArithmeticMean?action=login ----------------------- IndentationError?! I thought I might have added something by accident to the file before taking the backup, therefore I restored a significantly older backup. Still the newaccount.py from the backup equals the current one. These are the lines 151-156 from newaccount.py: ----------------------- td.append(html.INPUT(type="submit", name="create", value=_('Create Profile'))) return unicode(ret) def execute(pagename, request): ----------------------- Any ideas?! From rb.proj at gmail.com Wed Aug 29 01:29:23 2012 From: rb.proj at gmail.com (R.Bauer) Date: Wed, 29 Aug 2012 07:29:23 +0200 Subject: [Moin-user] Moin In-Reply-To: References: Message-ID: Am 28.08.2012 09:30, schrieb Kai Jaeger: > Lars and Eric, > > Thanks for that. > > I am not a Python programmer. However, I always assumed that when ones > changes a py script then after the next execution there will be either > a new or an updated pyc script?! You get only a new pyc file if it can compile. If you broke it you likly have an old version. In case you don't know, you can overwrite an action of the MoinMoin library by putting it into the data/plugin/action directory of your wiki instance. Doing so keeps your version also after an upgrade of MoinMoin. Btw. the log tells what you did wrong, python needs correct indentation. One level is exactly 4 blanks > [Tue Aug 28 07:33:37 2012] [error] return unicode(ret) > [Tue Aug 28 07:33:37 2012] [error] ^ > [Tue Aug 28 07:33:37 2012] [error] IndentationError: unexpected indent cheers Reimar > > Anyway, the log file is telling something unexpected: > ----------------------- > [Tue Aug 28 07:33:37 2012] [error] Traceback (most recent call last): > [Tue Aug 28 07:33:37 2012] [error] File > "C:\\Python26\\lib\\site-packages\\MoinMoin\\wsgiapp.py", line 282, in > __call__ > [Tue Aug 28 07:33:37 2012] [error] response = run(context) > [Tue Aug 28 07:33:37 2012] [error] File > "C:\\Python26\\lib\\site-packages\\MoinMoin\\wsgiapp.py", line 88, in > run > [Tue Aug 28 07:33:37 2012] [error] response = dispatch(request, > context, action_name) > [Tue Aug 28 07:33:37 2012] [error] File > "C:\\Python26\\lib\\site-packages\\MoinMoin\\wsgiapp.py", line 136, in > dispatch > [Tue Aug 28 07:33:37 2012] [error] response = > handle_action(context, pagename, action_name) > [Tue Aug 28 07:33:37 2012] [error] File > "C:\\Python26\\lib\\site-packages\\MoinMoin\\wsgiapp.py", line 185, in > handle_action > [Tue Aug 28 07:33:37 2012] [error] handler = > action.getHandler(context, action_name) > [Tue Aug 28 07:33:37 2012] [error] File > "C:\\Python26\\lib\\site-packages\\MoinMoin\\action\\__init__.py", > line 341, in getHandler > [Tue Aug 28 07:33:37 2012] [error] handler = > wikiutil.importPlugin(cfg, "action", action, identifier) > [Tue Aug 28 07:33:37 2012] [error] File > "C:\\Python26\\lib\\site-packages\\MoinMoin\\wikiutil.py", line 1057, > in importPlugin > [Tue Aug 28 07:33:37 2012] [error] return > importBuiltinPlugin(kind, name, function) > [Tue Aug 28 07:33:37 2012] [error] File > "C:\\Python26\\lib\\site-packages\\MoinMoin\\wikiutil.py", line 1081, > in importBuiltinPlugin > [Tue Aug 28 07:33:37 2012] [error] return > importNameFromPlugin(moduleName, function) > [Tue Aug 28 07:33:37 2012] [error] File > "C:\\Python26\\lib\\site-packages\\MoinMoin\\wikiutil.py", line 1094, > in importNameFromPlugin > [Tue Aug 28 07:33:37 2012] [error] module = __import__(moduleName, > globals(), {}, fromlist) > [Tue Aug 28 07:33:37 2012] [error] File > "C:\\Python26\\lib\\site-packages\\MoinMoin\\action\\newaccount.py", > line 154 > [Tue Aug 28 07:33:37 2012] [error] return unicode(ret) > [Tue Aug 28 07:33:37 2012] [error] ^ > [Tue Aug 28 07:33:37 2012] [error] IndentationError: unexpected indent > [Tue Aug 28 07:33:37 2012] [error] [client 62.255.207.52] mod_wsgi > (pid=2944): Exception occurred processing WSGI script > 'D:/Wikis/config/moin.wsgi'., referer: > http://aplwiki.com/PhraseBook/ArithmeticMean?action=login > ----------------------- > > IndentationError?! I thought I might have added something by accident > to the file before taking the backup, therefore I restored a > significantly older backup. Still the newaccount.py from the backup > equals the current one. > > These are the lines 151-156 from newaccount.py: > ----------------------- > td.append(html.INPUT(type="submit", name="create", > value=_('Create Profile'))) > > return unicode(ret) > > def execute(pagename, request): > ----------------------- > > Any ideas?! > > ------------------------------------------------------------------------------ > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > From kai at aplteam.com Wed Aug 29 02:07:21 2012 From: kai at aplteam.com (Kai Jaeger) Date: Wed, 29 Aug 2012 07:07:21 +0100 Subject: [Moin-user] Moin In-Reply-To: References: Message-ID: > You get only a new pyc file if it can compile. If you broke it you > likly have an old version. So I was right: if the pyc is missing or not updated something went wrong. > In case you don't know, you can overwrite an action of the MoinMoin > library by putting it into the data/plugin/action directory of your wiki > instance. Doing so keeps your version also after an upgrade of MoinMoin. I didn't, thanks for pointing this out. > Btw. the log tells what you did wrong, python needs correct indentation. > One level is exactly 4 blanks I changed that and bingo! it works again. But why did the backups not unearth the problem? Well, rather than replacing the script with the backup I compared them with CompareIt!, a software I am generally very happy with. It has an option "Ignore white space" which was ticked. Being an APL programmer this makes perfect sense. After having installed and configured CompareIt! years ago I forgot all about this. Therefore comparing the two files let to "Files identical" because the only difference is white space. The importance of White Space in Python is I must say an obstacle. I guess that in total Python programmers must have lost a couple of man-decades on problems caused by white spaces ;) Anyway, thanks for your help, Reimar! Kai From renato.pontefice at gmail.com Fri Aug 31 16:00:18 2012 From: renato.pontefice at gmail.com (Renato) Date: Fri, 31 Aug 2012 22:00:18 +0200 Subject: [Moin-user] how does it works! Message-ID: <504117D2.60705@gmail.com> Hi, I'm newbe. I know moinmoin from a friend of mine that tells me things about. I need to create a manual for a software that involve about 15 people. I thought to moinmoin, because I need that everyone contribute to the manual. Now (that I would start to use) I would understund some things: 1- how does it works? I mean: I Write the pages on the wiki. Then I can export in DocBook and then I need to use the DocBook format, edit with some sw that could edit this format, adjust the look and the export it from this DocBook sw in some different format (.pdf, .html...) 2- I can't find any start guide for moinmoin. I mean somethings that can explain me how to work with it. Can someone sudgest me some good link? TIA Renato