web commit by JeremyReed: Response about "create" on existing
[ikiwiki.git] / doc / index / discussion.mdwn
1 Seems like there should be a page for you to post your thoughts about
2 ikiwiki, both pro and con, anything that didn't work, ideas, or whatever.
3 Do so here..
4
5 Note that for more formal bug reports or todo items, you can also edit the
6 [[bugs]] and [[todo]] pages.
7
8 # Installation/Setup questions
9
10 I have just installed ikiwiki and it works - at least I have the example index.mdwn page
11 compiled and visible.  However I have a few issues/problems:-
12
13 * A couple of the 'optional' Perl modules aren't optional, you can't install ikiwiki without them,
14 these are HTML::Template and HTML::Scrubber (at least I think it was these two, it's a bit messy 
15 to go back and find out).
16
17 > You're right, HTML::Template is required. HTML::Scrubber is only required
18 > in the default configuration, and is optional if the htmlscrubber plugin
19 > is disabled. --[[Joey]]
20
21 * I don't seem to have got an ikiwiki man page created.
22
23 > It should be installed in /usr/share/man, or a similar directory
24 > depending on how your perl is set up and how you did the install.
25 > --[[Joey]]
26
27 > Found it, in /usr/local/share/man, since no other man pages are in either /usr/share/man or in /usr/local/share/man the ikiwiki
28 > man page is a bit lonely, and more to the point not on my MANPATH.  Still I have found it now, I'll just move it to somewhere
29 > more sensible. [[Chris]]
30
31 * Running "ikiwiki --setup ikiwiki.setup" doesn't do anything.  I have edited ikiwiki.setup to
32 my local settings.  There are no errors but neither does anything get compiled.  An ikiwiki
33 command to explicitly do the compile works fine.  Am I misunderstanding something here?
34
35 > Further tests indicate that ikiwiki isn't seeing changed files so doesn't always rebuild.
36 > How does ikiwiki decide when to rebuild?  I tried a full command line like "ikiwiki --verbose ikiwiki ~/public_html/ikiwiki --url=http://www.isbd.ltd.uk/~chris/ikiwiki/" and that doesn't do anything
37 either though it was the command line I originally used to compile.  After a long interval I 'touch'ed 
38 the files and then it *did* compile but 'touch'ing the files after a few minutes only doesn't seem to force a recompile.  I'm even more confused!
39
40 > ikiwiki only compiles files whose modification times have changed. It
41 > should see any change made as close as a second after the last compile.
42 > When run with --setup, ikiwiki always rebuilds every file in the wiki. If
43 > --setup is not working, you must have it pointed at the wrong path or
44 > something; you can pass -v to see what it's doing. I don't know why it
45 > would not see recently changed files; you could try stracing it.
46 > --[[Joey]]
47
48 > OK, thanks, I don't quite know what was happening before but it seems to be working right now.
49 > --[[Chris]]
50
51 >> Weird. I wish I knew what happened, but as it's working now, I'm
52 >> guessing some kind of user error was involved. --[[Joey]]
53
54 * I wish there was a mailing list, much easier for this sort of stuff than this, apart from
55 anything else I get to use a decent editor.
56
57 ----
58 # Excellent - how do I translate a TWiki site?
59
60 I just discovered ikiwiki quite by chance, I was looking for a console/terminal
61 menu system and found pdmenu.  So pdmenu brought me to here and I've found ikiwiki!
62 It looks as if it's just what I've been wanting for a long time.  I wanted something
63 to create mostly text web pages which, as far as possible, have source which is human 
64 readable or at least in a standard format.  ikiwiki does this twice over by using 
65 markdown for the source and producing static HTML from it.
66
67 I'm currently using TWiki and have a fair number of pages in that format, does
68 anyone have any bright ideas for translating?  I can knock up awk scripts fairly
69 easily, perl is possible (but I'm not strong in perl).
70
71 > Let us know if you come up with something to transition from the other
72 > format. Another option would be writing a ikiwiki plugin to support the
73 > TWiki format. --[[Joey]]
74
75 > Jamey Sharp and I have a set of scripts in progress to convert other wikis to ikiwiki, including history, so that we can migrate a few of our wikis.  We already have support for migrating MoinMoin wikis to ikiwiki, including conversion of the entire history to Git.  We used this to convert the [XCB wiki](http://xcb.freedesktop.org/wiki/) to ikiwiki; until we finalize the conversion and put the new wiki in place of the old one, you can browse the converted result at <http://xcb.freedesktop.org/ikiwiki>.  We already plan to add support for TWiki (including history, since you can just run parsecvs on the TWiki RCS files to get Git), so that we can convert the [Portland State Aerospace Society wiki](http://psas.pdx.edu) (currently in Moin, but with much of its history in TWiki, and with many of its pages still in TWiki format using Jamey's TWiki format for MoinMoin).
76 >
77 > Our scripts convert by way of HTML, using portions of the source wiki's code to render as HTML (with some additional code to do things like translate MoinMoin's `\[[TableOfContents]]` to ikiwiki's `\[[toc ]]`), and then using a modified [[cpan HTML::WikiConverter]] to turn this into markdown and ikiwiki.  This produces quite satisfactory results, apart from things that don't have any markdown equivalent and thus remain HTML, such as tables and definition lists.  Conversion of the history occurs by first using another script we wrote to translate MoinMoin history to Git, then using our git-map script to map a transformation over the Git history.
78 >
79 > We will post the scripts as soon as we have them complete enough to convert our wikis.
80 >
81 > -- Josh Triplett
82
83 >> Thanks for an excellent Xmas present, I will appreciate the additional 
84 >> users this will help switch to ikiwiki! --[[Joey]]
85
86 ----
87
88 # OpenID
89
90 I just figured I'd edit something on the page with my OpenID, since you've implemented it! --*[Kyle](http://kitenet.net/~kyle/)*=
91
92 > Kyle, If you like openid, I can switch your personal wiki over to use your openid. --[[Joey]]
93
94 ---- 
95
96 # ACL
97
98 > Moved to [[todo/ACL]] --[[Joey]]
99
100 ----
101
102 Some questions about the RecentChanges function. -- Ethan
103
104 > (Moved to [[todo/recentchanges]] --[[Joey]])
105
106 ----
107
108 Also, I'd like to request another template parameter which is just
109 $config{url}. That way you won't have to hard-code the URL of the wiki into
110 the template. -- Ethan
111
112 > That's already available in the BASEURL parameter. --[[Joey]]
113
114 ----
115
116 # Canonical feed location?
117
118 Moved to [[todo/canonical_feed_location]] --[[Joey]]
119
120 ----
121
122 # asciidoc or txt2tags ?
123
124 Any plugins or support for using asciidoc or txt2tags as the wiki language and/or exporting to asciidoc or txt2tags?
125
126 > No, but it should be quite easy to write such a plugin. The otl plugin
127 > is a good example of writing a formatting plugin that uses an external
128 > conversion program, like asciidoc or txt2tags. --[[Joey]]
129
130 ----
131
132 # LaTeX support?
133
134 Any plugins or support for exporting to LaTeX?
135 (If not could use asciidoc or txt2tags mentioned above to generated LaTeX.)
136
137 > It's already [[been_requested|todo/latex]], although perhaps not
138 > working the way you're thinking of. Noone is currently working on it.
139 > --[[Joey]]
140
141 >> I did some tests with using Markdown and a customized HTML::Latex and html2latex
142 >> and it appears it will work for me now. (I hope to use ikiwiki for many
143 >> to collaborate on a printed book that will be generated at least once per day in PDF format.)
144 >>
145 >> --JeremyReed
146
147 >>> Have a look at [pandoc](http://code.google.com/p/pandoc/).  It can make PDFs via pdflatex. --[[roktas]]
148
149 ----
150
151 # Using with CVS?
152
153 Any examples of using ikiwiki with cvs?
154
155 > No, although the existing svn backend could fairly esily be modified into
156 > a CVS backend, by someone who doesn't mind working with CVS. --[[Joey]]
157
158 ----
159
160 # Show differences before saving page?
161
162 It would be nice to be able to have a button to show "Differences" (or "Show Diff") when
163 editing a page. Is that an option that can be enabled?
164
165 > It's doable, it could even be done by a [[todo/plugin]], I think.
166 > --[[Joey]]
167
168 ----
169
170 # Max submit size?
171
172 Any setting for limiting how many kilobytes can be submitted via the "edit" form?
173 -- [[JeremyReed]]
174
175 > Not currently. Worried about abuse? --[[Joey]]
176
177 >> I didn't want it abused accidently or with malice. I was thinking that Perl's CGI.pm would handle this, but I don't see that.
178 >> I read that textarea max bytes may be 500 lines or 28000 characters or 30000 characters or 64kB. It seems like it
179 >> varies and I didn't test myself, because I guess it may depend on different clients and different HTTP servers. 
180 >> This could be checked using javascript on the client side (before submitting) and by checking size on server side (before saving). --[[JeremyReed]]
181
182 >>> The absolute limit varies by browser. If there are web servers that
183 >>> also limit it, I don't know of them. --[[Joey]]
184
185 ----
186
187 # Disable sub-discussion pages?
188
189 Moved to [[bugs]] -- [[Joey]]
190
191 ----
192
193 # Access Keys
194
195 Would anyone else find this a valuable addition.  In oddmuse and instiki (the only other
196 wiki engines I am currently using, the edit, home, and submit link tags have an
197 accesskey attribute.  I find it nice not to have to resort to the mouse for those
198 actions.  However, it may not be something everyone appreciates.  Any thoughts?
199 --[Mazirian](http://mazirian.com)
200
201 > Maybe, although it would need to take the critisism at
202 > http://www.cs.tut.fi/~jkorpela/forms/accesskey.html into account.
203
204 >> Thank you for that link. Given that the edit link is the first thing you tab to
205 >> in the current layout, I guess it isn't all that necessary. I have had a 
206 >> a user complaint recently that Alt-e in oddmuse was overriding his access
207 >> to the browser menu.
208
209 ----
210
211 # Editing the style sheet.
212
213 It would be nice to be able to edit the stylesheet by means of the cgi.  Or is this possible?  I wasn't able to achieve it.
214 Ok, that's my last 2 cents for a while. --[Mazirian](http://mazirian.com)
215
216 > I don't support editing it, but if/when ikiwiki gets file upload support,
217 > it'll be possible to upload a style sheet. (If .css is in the allowed
218 > extensions list.. no idea how safe that would be, a style sheet is
219 > probably a great place to put XSS attacks and evil javascript that would
220 > be filtered out of any regular page in ikiwiki). --[[Joey]]
221
222 >> I hadn't thought of that at all.  It's a common feature and one I've
223 >> relied on safely, because the wikis I am maintaining at the moment
224 >> are all private and restricted to trusted users. Given that the whole
225 >> point of ikiwiki is to be able to access and edit via the shell as
226 >> well as the web, I suppose the features doesn't add a lot.  By the
227 >> way, the w3m mode is brilliant.  I haven't tried it yet, but the idea
228 >> is great.
229
230 ----
231
232 # Disable build/install requirement on PerlMagick
233
234 Some installs of PerlMagick require X11. I tried to first disable using "img" by using "--disable-plugin img"
235 in the Makefile. But still failed. My workaround was to remove "img" from the bundle in IkiWiki/Plugin/goodstuff.pm
236 before building. What is the recommended way to install ikiwiki without "img" support? --[[JeremyReed]]
237
238 > I've fixed this in svn so plugins in goodstuff can be disabled. --[[Joey]]
239
240 ----
241
242 # Documentation for banning users?
243
244 The [[todo]] page says admins can ban users. Where is this documented? I search the source and found 
245 set\_banned\_users() which led me to the CGI "preferences" form for the admin. Now logged in as an admin (as defined in my setup configuration),
246 I see the field for this. But no details on how to use it. From the source it appears to be a space-delimited list of usernames. (I didn't test yet.)
247
248 Can you please provide a [[/banned_users]] documentation about "banning" users function linked from the [[Features]] page and maybe [[security]] page and linked from the "preferences" for the admin?
249 (I don't do this myself as I am unsure about this and still reading the code about banning users.)
250
251 ----
252
253 # Documentation for locking pages?
254
255 The [[features]] page, the [[todo]] page and the [[usage]] manual page say pages can be locked and only the admin can edit locked pages.
256 Where is locking pages documented? ... A moment later, from searching source I found this is configured via the preferences for the admin
257 and that links to [[pagespec]].
258
259 Can you please provide a [[/page_locking]] doc about locking pages linked from the [[features]] page and elsewhere? And have that link to [[pagespec]]?
260 (I don't do this myself as I am unsure about this and still reading the code about locking pages.)
261
262 ----
263
264 # RecentChanges should show path to wiki sub-pages?
265
266 The RecentChanges only shows the final file name for the recently changes file,
267 for example "discussion". It would be more useful to see "index/discussion"
268 or the path to the sub-page. I think this is handled by the htmllink() routine.
269
270 >> IMHO it's a good idea and I like it. Often I can see changes in
271 >> any discussion page, but I don't know without clicking the link
272 >> what discussion was changed.
273
274 >> However, I can see one problem here. You can commit via command line
275 >> changes in many pages. It will be displayed ugly then, because probably
276 >> a width of the RecentChanges page will be greater then a width of
277 >> user's browser. I hate these pages. So I propose to display a list of
278 >> changed pages in a column, not in a row. --Pawel
279
280 ----
281
282 # Should not create an existing page
283
284 This might be a bug, but will discuss it here first.
285 Clicking on an old "?" or going to a create link but new Markdown content exists, should not go into "create" mode, but should do a regular "edit".
286
287 > I belive that currently it does a redirect to the new static web page.
288 > At least that's the intent of the code. --[[Joey]]
289
290 >> Try at your site: `?page=discussion&from=index&do=create`
291 >> It brings up an empty textarea to start a new webpage -- even though it already exists here. --reed
292
293 ----
294
295 # Refreshing RecentChanges page
296
297 What do you think about refreshing RecentChanges page (via Meta Refresh Tag)?
298 It can be useful for users like me which rather prefer watching the last changes
299 in WWW browser tab than subscribing to page. --Pawel
300
301 > Depends, if it were done the time period should be made configurable.
302 > Unwanted server load due to refeshing could be a problem for some.
303 > --[[Joey]]
304
305 ----
306
307 # Fall back for templatedir
308
309 It would be nice if you didn't have to copy all templates to your custom _templatedir_
310 so you only have your customizations there.
311 And then have it fall back to the location as configured at build time (like /usr/share/ikiwiki/templates/).
312 This would be similar to _underlaydir_. I don't think any extra configuration directive is needed.
313 As it is now, RecentChanges will have Perl CGI error and Preferences will be an empty page, if you don't have corresponding templates.
314 I can quickly make a patch and submit to the patch queue. Any comments?
315
316 > I'd probably accept a patch immediately. --[[Joey]]