users ikiwiki http://ikiwiki.info/users/ ikiwiki ikiwiki 2008-09-05T07:44:13Z change to users/Edward_Betts on ikiwiki http://ikiwiki.info/recentchanges/change_660fde2caa368ba07468837a3a5543353a41232c/ http://edward.myopenid.com/ 2008-09-05T07:44:13Z 2008-09-05T07:44:13Z <div class="metadata"> <span class="desc"><br />Changed pages:</span> <span class="pagelinks"> <a href="http://git.ikiwiki.info/?p=ikiwiki;a=blobdiff;h=0d4483fa87f05431d2d7ee38502eae9896d6b3c0;hp=9ed438eba200504f5f95d6a90f343364ffdc17af;hb=c4de26ad48e0a4e9c88ae15471f6619b2611bec2;f=doc/users/Edward_Betts.mdwn"><img src="http://ikiwiki.info/users/./../wikiicons/diff.png" alt="diff" /></a><a href="http://ikiwiki.info/ikiwiki.cgi?page=users%2FEdward_Betts&amp;do=recentchanges_link">users/Edward Betts</a> </span> <span class="desc"><br />Changed by:</span> <span class="committer"> <a href="http://edward.myopenid.com/">edward [myopenid.com]</a> </span> <span class="desc"><br />Commit type:</span> <span class="committype">web</span> <span class="desc"><br />Date:</span> <span class="changedate">03:44:13 09/05/08</span> </div> <div class="changelog"> also watch discussion<br /> </div> <div class="diff"> <pre> diff --git a/doc/users/Edward_Betts.mdwn b/doc/users/Edward_Betts.mdwn index 9ed438e..0d4483f 100644 --- a/doc/users/Edward_Betts.mdwn +++ b/doc/users/Edward_Betts.mdwn @@ -1,4 +1,7 @@ My watchlist: -[[!inline pages=&quot;todo/allow_wiki_syntax_in_commit_messages todo/shortcut_with_different_link_text todo/structured_page_data&quot; archive=&quot;yes&quot; sort=&quot;mtime&quot; atom=&quot;yes&quot;]] +[[!inline archive=&quot;yes&quot; sort=&quot;mtime&quot; atom=&quot;yes&quot; pages=&quot; +todo/allow_wiki_syntax_in_commit_messages* +todo/shortcut_with_different_link_text* +todo/structured_page_data* &quot;]] </pre> </div> change to users/Edward_Betts on ikiwiki http://ikiwiki.info/recentchanges/change_c4de26ad48e0a4e9c88ae15471f6619b2611bec2/ http://edward.myopenid.com/ 2008-09-05T07:41:22Z 2008-09-05T07:41:22Z <div class="metadata"> <span class="desc"><br />Changed pages:</span> <span class="pagelinks"> <a href="http://git.ikiwiki.info/?p=ikiwiki;a=blobdiff;h=9ed438eba200504f5f95d6a90f343364ffdc17af;hp=69ca043c23c128a951269205dda9669ff688b3c7;hb=e8af5334600a85f73413b0c0a343ca6078f808de;f=doc/users/Edward_Betts.mdwn"><img src="http://ikiwiki.info/users/./../wikiicons/diff.png" alt="diff" /></a><a href="http://ikiwiki.info/ikiwiki.cgi?page=users%2FEdward_Betts&amp;do=recentchanges_link">users/Edward Betts</a> </span> <span class="desc"><br />Changed by:</span> <span class="committer"> <a href="http://edward.myopenid.com/">edward [myopenid.com]</a> </span> <span class="desc"><br />Commit type:</span> <span class="committype">web</span> <span class="desc"><br />Date:</span> <span class="changedate">03:41:22 09/05/08</span> </div> <div class="changelog"> add todo/structured_page_data<br /> </div> <div class="diff"> <pre> diff --git a/doc/users/Edward_Betts.mdwn b/doc/users/Edward_Betts.mdwn index 69ca043..9ed438e 100644 --- a/doc/users/Edward_Betts.mdwn +++ b/doc/users/Edward_Betts.mdwn @@ -1,4 +1,4 @@ My watchlist: -[[!inline pages=&quot;todo/allow_wiki_syntax_in_commit_messages todo/shortcut_with_different_link_text&quot; archive=&quot;yes&quot; sort=&quot;mtime&quot; atom=&quot;yes&quot;]] +[[!inline pages=&quot;todo/allow_wiki_syntax_in_commit_messages todo/shortcut_with_different_link_text todo/structured_page_data&quot; archive=&quot;yes&quot; sort=&quot;mtime&quot; atom=&quot;yes&quot;]] </pre> </div> change to todo/structured_page_data/discussion on ikiwiki http://ikiwiki.info/recentchanges/change_e8af5334600a85f73413b0c0a343ca6078f808de/ http://edward.myopenid.com/ 2008-09-05T07:36:02Z 2008-09-05T07:36:02Z <div class="metadata"> <span class="desc"><br />Changed pages:</span> <span class="pagelinks"> <a href="http://git.ikiwiki.info/?p=ikiwiki;a=blobdiff;h=bc7f39277e6cab6e71b33914f1673ec5c9742ae9;hp=0000000000000000000000000000000000000000;hb=8cde7554bd5ad118b96bcb557f4e452cba341ad7;f=doc/todo/structured_page_data/discussion.mdwn"><img src="http://ikiwiki.info/users/./../wikiicons/diff.png" alt="diff" /></a><a href="http://ikiwiki.info/ikiwiki.cgi?page=todo%2Fstructured_page_data%2Fdiscussion&amp;do=recentchanges_link">todo/structured page data/discussion</a> </span> <span class="desc"><br />Changed by:</span> <span class="committer"> <a href="http://edward.myopenid.com/">edward [myopenid.com]</a> </span> <span class="desc"><br />Commit type:</span> <span class="committype">web</span> <span class="desc"><br />Date:</span> <span class="changedate">03:36:02 09/05/08</span> </div> <div class="changelog"> How about using JSON?<br /> </div> <div class="diff"> <pre> diff --git a/doc/todo/structured_page_data/discussion.mdwn b/doc/todo/structured_page_data/discussion.mdwn new file mode 100644 index 0000000..bc7f392 --- /dev/null +++ b/doc/todo/structured_page_data/discussion.mdwn @@ -0,0 +1 @@ +How about using JSON? YAML is popular in the Perl world, but the Web 2.0 world seems more excited about using JSON for data serialization. I find it easier to edit JSON by hand than YAML. -- [[Edward|/users/Edward_Betts]] </pre> </div> change to todo/structured_page_data on ikiwiki http://ikiwiki.info/recentchanges/change_8cde7554bd5ad118b96bcb557f4e452cba341ad7/ JoshTriplett 2008-09-04T22:32:56Z 2008-09-04T22:32:56Z <div class="metadata"> <span class="desc"><br />Changed pages:</span> <span class="pagelinks"> <a href="http://git.ikiwiki.info/?p=ikiwiki;a=blobdiff;h=16d51f925fcfed7feba87d8dda04ad7e896b634d;hp=3db7507836f1435dbec6062e507a87d2d3f235a9;hb=2fe3dfc9f93ffa3bedaba261cd37deb9539fa9f0;f=doc/todo/structured_page_data.mdwn"><img src="http://ikiwiki.info/users/./../wikiicons/diff.png" alt="diff" /></a><a href="http://ikiwiki.info/ikiwiki.cgi?page=todo%2Fstructured_page_data&amp;do=recentchanges_link">todo/structured page data</a> </span> <span class="desc"><br />Changed by:</span> <span class="committer"> <a href="http://ikiwiki.info/ikiwiki.cgi?page=users%2FJoshTriplett&amp;do=recentchanges_link">JoshTriplett</a> </span> <span class="desc"><br />Commit type:</span> <span class="committype">web</span> <span class="desc"><br />Date:</span> <span class="changedate">18:32:56 09/04/08</span> </div> <div class="changelog"> Expand acronym.<br /> </div> <div class="diff"> <pre> diff --git a/doc/todo/structured_page_data.mdwn b/doc/todo/structured_page_data.mdwn index 3db7507..16d51f9 100644 --- a/doc/todo/structured_page_data.mdwn +++ b/doc/todo/structured_page_data.mdwn @@ -1,6 +1,6 @@ This is an idea from [[JoshTriplett]]. --[[Joey]] -Some uses of ikiwiki, such as for a BTS, move a bit away from the wiki end +Some uses of ikiwiki, such as for a bug-tracking system (BTS), move a bit away from the wiki end of the spectrum, and toward storing structured data about a page or instead of a page. </pre> </div> change to todo/structured_page_data on ikiwiki http://ikiwiki.info/recentchanges/change_2fe3dfc9f93ffa3bedaba261cd37deb9539fa9f0/ joey 2008-09-04T19:50:23Z 2008-09-04T19:50:23Z <div class="metadata"> <span class="desc"><br />Changed pages:</span> <span class="pagelinks"> <a href="http://git.ikiwiki.info/?p=ikiwiki;a=blobdiff;h=3db7507836f1435dbec6062e507a87d2d3f235a9;hp=524bdb8dd0db2d27f77eadbcb74464ca015e14c4;hb=46676639c2d8d3b4491d45785f69adf79cbcb7b0;f=doc/todo/structured_page_data.mdwn"><img src="http://ikiwiki.info/users/./../wikiicons/diff.png" alt="diff" /></a><a href="http://ikiwiki.info/ikiwiki.cgi?page=todo%2Fstructured_page_data&amp;do=recentchanges_link">todo/structured page data</a> </span> <span class="desc"><br />Changed by:</span> <span class="committer"> <a href="http://ikiwiki.info/ikiwiki.cgi?page=users%2Fjoey&amp;do=recentchanges_link">joey</a> </span> <span class="desc"><br />Commit type:</span> <span class="committype">git</span> <span class="desc"><br />Date:</span> <span class="changedate">15:50:23 09/04/08</span> </div> <div class="changelog"> Merge branch &#39;master&#39; of ssh://git.ikiwiki.info/srv/git/ikiwiki.info<br /> </div> change to todo/structured_page_data on ikiwiki http://ikiwiki.info/recentchanges/change_46676639c2d8d3b4491d45785f69adf79cbcb7b0/ joey 2008-09-04T19:48:56Z 2008-09-04T19:48:56Z <div class="metadata"> <span class="desc"><br />Changed pages:</span> <span class="pagelinks"> <a href="http://git.ikiwiki.info/?p=ikiwiki;a=blobdiff;h=524bdb8dd0db2d27f77eadbcb74464ca015e14c4;hp=7723daba7e6e88cb79dd1eb23842213e601d22b7;hb=500a19baaaddcd9a3a98a1c1716233df7c9013b7;f=doc/todo/structured_page_data.mdwn"><img src="http://ikiwiki.info/users/./../wikiicons/diff.png" alt="diff" /></a><a href="http://ikiwiki.info/ikiwiki.cgi?page=todo%2Fstructured_page_data&amp;do=recentchanges_link">todo/structured page data</a> </span> <span class="desc"><br />Changed by:</span> <span class="committer"> <a href="http://ikiwiki.info/ikiwiki.cgi?page=users%2Fjoey&amp;do=recentchanges_link">joey</a> </span> <span class="desc"><br />Commit type:</span> <span class="committype">git</span> <span class="desc"><br />Date:</span> <span class="changedate">15:48:56 09/04/08</span> </div> <div class="changelog"> update<br /> </div> <div class="diff"> <pre> diff --git a/doc/todo/structured_page_data.mdwn b/doc/todo/structured_page_data.mdwn index 7723dab..524bdb8 100644 --- a/doc/todo/structured_page_data.mdwn +++ b/doc/todo/structured_page_data.mdwn @@ -55,3 +55,13 @@ It would be nice if the type implementation code could just use FormBuilder, since its automatic form generation, and nice field validation model is a perfect match for structured data. But this problem with editpage.tmpl would have to be sorted out to allow that. + +Additional tie-ins: + +* Pagespecs that can select pages with a field with a given value, etc. +* The search plugin could allow searching for specific fields with specific + content. (xapian term search is a good fit). + +See also: + +[[tracking_bugs_with_dependencies]] </pre> </div> change to todo/structured_page_data on ikiwiki http://ikiwiki.info/recentchanges/change_53453ebdb2c6624abcbb56a2f9605fffcd326c77/ JoshTriplett 2008-09-04T19:48:03Z 2008-09-04T19:48:03Z <div class="metadata"> <span class="desc"><br />Changed pages:</span> <span class="pagelinks"> <a href="http://git.ikiwiki.info/?p=ikiwiki;a=blobdiff;h=59756152fb7f3516b22ab4bf7fc8e424652c6ec8;hp=7723daba7e6e88cb79dd1eb23842213e601d22b7;hb=500a19baaaddcd9a3a98a1c1716233df7c9013b7;f=doc/todo/structured_page_data.mdwn"><img src="http://ikiwiki.info/users/./../wikiicons/diff.png" alt="diff" /></a><a href="http://ikiwiki.info/ikiwiki.cgi?page=todo%2Fstructured_page_data&amp;do=recentchanges_link">todo/structured page data</a> </span> <span class="desc"><br />Changed by:</span> <span class="committer"> <a href="http://ikiwiki.info/ikiwiki.cgi?page=users%2FJoshTriplett&amp;do=recentchanges_link">JoshTriplett</a> </span> <span class="desc"><br />Commit type:</span> <span class="committype">web</span> <span class="desc"><br />Date:</span> <span class="changedate">15:48:03 09/04/08</span> </div> <div class="changelog"> Distinguish between strings and wiki markup.<br /> </div> <div class="diff"> <pre> diff --git a/doc/todo/structured_page_data.mdwn b/doc/todo/structured_page_data.mdwn index 7723dab..5975615 100644 --- a/doc/todo/structured_page_data.mdwn +++ b/doc/todo/structured_page_data.mdwn @@ -33,7 +33,7 @@ Information about data types would be encoded elsewhere, probably on a parent page (using a separate directive). That way, all child pages could be forced to have the same fields. -There would be some simple types like select, boolean, multiselect, string. +There would be some simple types like select, boolean, multiselect, string, wiki markup. Probably lists of these (ie, list of strings). Possibly more complex data structures. </pre> </div> change to plugins/table/discussion on ikiwiki http://ikiwiki.info/recentchanges/change_500a19baaaddcd9a3a98a1c1716233df7c9013b7/ joey 2008-09-04T18:48:40Z 2008-09-04T18:48:40Z <div class="metadata"> <span class="desc"><br />Changed pages:</span> <span class="pagelinks"> <a href="http://git.ikiwiki.info/?p=ikiwiki;a=blobdiff;h=334acf0c0d743bb741e38b697964787cddfb9026;hp=05cdd5f8bac2212b9eae1056c4440022a994a078;hb=83bb8f4fcae8a27d8f9a1fb5ff7b63a1bf43cd9f;f=doc/plugins/table/discussion.mdwn"><img src="http://ikiwiki.info/users/./../wikiicons/diff.png" alt="diff" /></a><a href="http://ikiwiki.info/ikiwiki.cgi?page=plugins%2Ftable%2Fdiscussion&amp;do=recentchanges_link">plugins/table/discussion</a> </span> <span class="desc"><br />Changed by:</span> <span class="committer"> <a href="http://ikiwiki.info/ikiwiki.cgi?page=users%2Fjoey&amp;do=recentchanges_link">joey</a> </span> <span class="desc"><br />Commit type:</span> <span class="committype">git</span> <span class="desc"><br />Date:</span> <span class="changedate">14:48:40 09/04/08</span> </div> <div class="changelog"> response<br /> </div> <div class="diff"> <pre> diff --git a/doc/plugins/table/discussion.mdwn b/doc/plugins/table/discussion.mdwn index 05cdd5f..334acf0 100644 --- a/doc/plugins/table/discussion.mdwn +++ b/doc/plugins/table/discussion.mdwn @@ -44,3 +44,12 @@ For centering cell content I need to type `| foo |`. Please note that I used only one space for all examples, but in DokuWiki I can use many spaces. Do you like it? Can you implement the same in Ikiwiki? :) --[[Paweł|ptecza]] + +&gt; Multimarkdown has [table support](http://fletcherpenney.net/multimarkdown/users_guide/multimarkdown_syntax_guide/#tables) +&gt; that includes alignment. (Using colons to control it.) So you can turn on +&gt; `multimarkdown` in setup to use that. +&gt; +&gt; I&#39;d not mind if someone adds alignment to this plugin. Although the +&gt; universe of possible table formatting stuff is nearly endless, and at +&gt; some point it becomes clearer and simpler to just write the table in +&gt; html.. --[[Joey]] </pre> </div> change to todo/structured_page_data on ikiwiki http://ikiwiki.info/recentchanges/change_83bb8f4fcae8a27d8f9a1fb5ff7b63a1bf43cd9f/ joey 2008-09-04T18:35:35Z 2008-09-04T18:35:35Z <div class="metadata"> <span class="desc"><br />Changed pages:</span> <span class="pagelinks"> <a href="http://git.ikiwiki.info/?p=ikiwiki;a=blobdiff;h=7723daba7e6e88cb79dd1eb23842213e601d22b7;hp=0000000000000000000000000000000000000000;hb=c427ab7ccbe6c5fe43602a724bbeab454d50195c;f=doc/todo/structured_page_data.mdwn"><img src="http://ikiwiki.info/users/./../wikiicons/diff.png" alt="diff" /></a><a href="http://ikiwiki.info/ikiwiki.cgi?page=todo%2Fstructured_page_data&amp;do=recentchanges_link">todo/structured page data</a> </span> <span class="desc"><br />Changed by:</span> <span class="committer"> <a href="http://ikiwiki.info/ikiwiki.cgi?page=users%2Fjoey&amp;do=recentchanges_link">joey</a> </span> <span class="desc"><br />Commit type:</span> <span class="committype">git</span> <span class="desc"><br />Date:</span> <span class="changedate">14:35:35 09/04/08</span> </div> <div class="changelog"> idea from josh<br /> </div> <div class="diff"> <pre> diff --git a/doc/todo/structured_page_data.mdwn b/doc/todo/structured_page_data.mdwn new file mode 100644 index 0000000..7723dab --- /dev/null +++ b/doc/todo/structured_page_data.mdwn @@ -0,0 +1,57 @@ +This is an idea from [[JoshTriplett]]. --[[Joey]] + +Some uses of ikiwiki, such as for a BTS, move a bit away from the wiki end +of the spectrum, and toward storing structured data about a page or instead +of a page. + +For example, in a bug report you might want to choose a severity from a +list, enter a version number, and have a bug submitter or owner recorded, +etc. When editing online, it would be nice if these were separate fields on +the form, rather than the data being edited in the big edit form. + +There&#39;s a tension here between remaining a wiki with human-editable source +files, containing freeform markup, and more structured data storage. I +think that it would be best to include the structured data in the page, +using a directive. Something like: + + part of page content + [[data yaml=&quot;&lt;arbitrary yaml here&gt;&quot;]] + rest of page content + +As long as the position of the directive is not significant, it could be +stripped out when web editing, the yaml used to generate/populate form fields, +and then on save, the directive regenerated and inserted at top/bottom of +the page. + +Josh thinks that yaml is probably a good choice, but the source could be a +`.yaml` file that contains no directives, and just yaml. An addition +complication in this scenario is, if the yaml included wiki page formatted content, +ikiwiki would have to guess or be told what markup language it used. + +Either way, the yaml on the page would encode fields and their current content. +Information about data types would be encoded elsewhere, probably on a +parent page (using a separate directive). That way, all child pages could +be forced to have the same fields. + +There would be some simple types like select, boolean, multiselect, string. +Probably lists of these (ie, list of strings). Possibly more complex data +structures. + +It should also be possible for plugins to define new types, and the type +definitions should include validation of entered data, and how to prompt +the user for the data. + +This seems conceptually straightforward, if possibly quite internally +complex to handle the more complicated types and validation. + +One implementation wrinkle is how to build the html form. The editpage.tmpl +currently overrides the standard [[cpan CGI::FormBuilder]] generated form, +which was done to make the edit page be laid out in a nice way. This, +however, means that new fields cannot be easily added to it using +[[cpan CGI::FormBuilder]]. The attachment plugin uses the hack of bouilding +up html by hand and dumping it into the form via a template variable. + +It would be nice if the type implementation code could just use +FormBuilder, since its automatic form generation, and nice field validation +model is a perfect match for structured data. But this problem with +editpage.tmpl would have to be sorted out to allow that. </pre> </div> change to bugs/Filenames_with_colons_cause_problems_for_Windows_users on ikiwiki http://ikiwiki.info/recentchanges/change_d2679de965a0300474341139871855bbccc61612/ joey 2008-09-04T18:13:10Z 2008-09-04T18:13:10Z <div class="metadata"> <span class="desc"><br />Changed pages:</span> <span class="pagelinks"> <a href="http://git.ikiwiki.info/?p=ikiwiki;a=blobdiff;h=0fccd1dcb01a3c7d1a074fb814d6ce323749386c;hp=8460f0c8390c18b32145d32692d158309f37235f;hb=57153dcb9bc9de0214f58dc2a3ea9ff055ab6d07;f=doc/bugs/Filenames_with_colons_cause_problems_for_Windows_users.mdwn"><img src="http://ikiwiki.info/users/./../wikiicons/diff.png" alt="diff" /></a><a href="http://ikiwiki.info/ikiwiki.cgi?page=bugs%2FFilenames_with_colons_cause_problems_for_Windows_users&amp;do=recentchanges_link">bugs/Filenames with colons cause problems for Windows users</a> </span> <span class="desc"><br />Changed by:</span> <span class="committer"> <a href="http://ikiwiki.info/ikiwiki.cgi?page=users%2Fjoey&amp;do=recentchanges_link">joey</a> </span> <span class="desc"><br />Commit type:</span> <span class="committype">git</span> <span class="desc"><br />Date:</span> <span class="changedate">14:13:10 09/04/08</span> </div> <div class="changelog"> For fine control over what characters are allowed, unescaped in source filenames, the wiki_file_chars setting is added. For example, set to &quot;-[:alnum:]+/._&quot; to disable colons from being used in source files (which can cause trouble om Windows).<br /> </div> <div class="diff"> <pre> diff --git a/IkiWiki.pm b/IkiWiki.pm index 64ef658..7553ae3 100644 --- a/IkiWiki.pm +++ b/IkiWiki.pm @@ -312,9 +312,15 @@ sub getsetup () { #{{{ safe =&gt; 0, rebuild =&gt; 1, }, + wiki_file_chars =&gt; { + type =&gt; &quot;string&quot;, + description =&gt; &quot;specifies the characters that are allowed in source filenames&quot;, + default =&gt; &quot;-[:alnum:]+/.:_&quot;, + safe =&gt; 0, + rebuild =&gt; 1, + }, wiki_file_regexp =&gt; { type =&gt; &quot;internal&quot;, - default =&gt; qr/(^[-[:alnum:]_.:\/+]+$)/, description =&gt; &quot;regexp of legal source files&quot;, safe =&gt; 0, rebuild =&gt; 1, @@ -413,6 +419,10 @@ sub checkconfig () { #{{{ $gettext_obj=undef; } } + + if (! defined $config{wiki_file_regexp}) { + $config{wiki_file_regexp}=qr/(^[$config{wiki_file_chars}]+$)/; + } if (ref $config{ENV} eq &#39;HASH&#39;) { foreach my $val (keys %{$config{ENV}}) { @@ -770,7 +780,7 @@ sub bestlink ($$) { #{{{ elsif (exists $pagecase{lc $l}) { return $pagecase{lc $l}; } - } while $cwd=~s!/?[^/]+$!!; + } while $cwd=~s{/?[^/]+$}{}; if (length $config{userdir}) { my $l = &quot;$config{userdir}/&quot;.lc($link); @@ -808,13 +818,16 @@ sub pagetitle ($;$) { #{{{ sub titlepage ($) { #{{{ my $title=shift; - $title=~s/([^-[:alnum:]:+\/.])/$1 eq &#39; &#39; ? &#39;_&#39; : &quot;__&quot;.ord($1).&quot;__&quot;/eg; + # support use w/o %config set + my $chars = defined $config{wiki_file_chars} ? $config{wiki_file_chars} : &quot;-[:alnum:]+/.:_&quot;; + $title=~s/([^$chars]|_)/$1 eq &#39; &#39; ? &#39;_&#39; : &quot;__&quot;.ord($1).&quot;__&quot;/eg; return $title; } #}}} sub linkpage ($) { #{{{ my $link=shift; - $link=~s/([^-[:alnum:]:+\/._])/$1 eq &#39; &#39; ? &#39;_&#39; : &quot;__&quot;.ord($1).&quot;__&quot;/eg; + my $chars = defined $config{wiki_file_chars} ? $config{wiki_file_chars} : &quot;-[:alnum:]+/.:_&quot;; + $link=~s/([^$chars])/$1 eq &#39; &#39; ? &#39;_&#39; : &quot;__&quot;.ord($1).&quot;__&quot;/eg; return $link; } #}}} diff --git a/debian/changelog b/debian/changelog index 590e066..6565d63 100644 --- a/debian/changelog +++ b/debian/changelog @@ -11,6 +11,10 @@ ikiwiki (2.63) UNRELEASED; urgency=low if no mime type is detected. * table: Support header=column to make the table header be the first column of the data. (AlexandreDupas) + * For fine control over what characters are allowed, unescaped in source filenames, + the wiki_file_chars setting is added. For example, set to &quot;-[:alnum:]+/._&quot; to + disable colons from being used in source files (which can cause trouble + om Windows). -- Joey Hess &lt;joeyh@debian.org&gt; Thu, 28 Aug 2008 16:08:18 -0400 diff --git a/doc/bugs/Filenames_with_colons_cause_problems_for_Windows_users.mdwn b/doc/bugs/Filenames_with_colons_cause_problems_for_Windows_users.mdwn index 8460f0c..0fccd1d 100644 --- a/doc/bugs/Filenames_with_colons_cause_problems_for_Windows_users.mdwn +++ b/doc/bugs/Filenames_with_colons_cause_problems_for_Windows_users.mdwn @@ -60,6 +60,11 @@ Windows does not support filenames containing any of these characters: `/ \ * : &gt;&gt;&gt; source on windows systems is desired, you&#39;d have to remember to turn &gt;&gt;&gt; that on when setting up a wiki, even if the wiki was hosted on unix. &gt;&gt;&gt; +&gt;&gt;&gt; Ok, `wiki_file_chars` config option added, set to +&gt;&gt;&gt; `&quot;-[:alnum:]+/._&quot;` to exclude colons from filenames read or written by +&gt;&gt;&gt; ikiwiki. [[done]] +&gt;&gt;&gt; &gt;&gt;&gt; BTW, I suspect there are lots of other problems with actually running &gt;&gt;&gt; ikiwiki on windows, including its assumption that the directory -&gt;&gt;&gt; separator is &quot;/&quot;. --[[Joey]] +&gt;&gt;&gt; separator is &quot;/&quot;. Windows will be supported when someone sends me a +&gt;&gt;&gt; comprehansive and not ugly or performance impacting patch. :-) --[[Joey]] diff --git a/po/ikiwiki.pot b/po/ikiwiki.pot index 15eab39..cf19ba4 100644 --- a/po/ikiwiki.pot +++ b/po/ikiwiki.pot @@ -8,7 +8,7 @@ msgid &quot;&quot; msgstr &quot;&quot; &quot;Project-Id-Version: PACKAGE VERSION\n&quot; &quot;Report-Msgid-Bugs-To: \n&quot; -&quot;POT-Creation-Date: 2008-08-28 13:05-0400\n&quot; +&quot;POT-Creation-Date: 2008-09-04 14:10-0400\n&quot; &quot;PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n&quot; &quot;Last-Translator: FULL NAME &lt;EMAIL@ADDRESS&gt;\n&quot; &quot;Language-Team: LANGUAGE &lt;LL@li.org&gt;\n&quot; @@ -16,62 +16,62 @@ msgstr &quot;&quot; &quot;Content-Type: text/plain; charset=CHARSET\n&quot; &quot;Content-Transfer-Encoding: 8bit\n&quot; -#: ../IkiWiki/CGI.pm:139 +#: ../IkiWiki/CGI.pm:140 msgid &quot;You need to log in first.&quot; msgstr &quot;&quot; -#: ../IkiWiki/CGI.pm:171 +#: ../IkiWiki/CGI.pm:172 msgid &quot;login failed, perhaps you need to turn on cookies?&quot; msgstr &quot;&quot; -#: ../IkiWiki/CGI.pm:189 ../IkiWiki/CGI.pm:538 +#: ../IkiWiki/CGI.pm:190 ../IkiWiki/CGI.pm:539 msgid &quot;Your login session has expired.&quot; msgstr &quot;&quot; -#: ../IkiWiki/CGI.pm:210 +#: ../IkiWiki/CGI.pm:211 msgid &quot;Login&quot; msgstr &quot;&quot; -#: ../IkiWiki/CGI.pm:211 +#: ../IkiWiki/CGI.pm:212 msgid &quot;Preferences&quot; msgstr &quot;&quot; -#: ../IkiWiki/CGI.pm:212 +#: ../IkiWiki/CGI.pm:213 msgid &quot;Admin&quot; msgstr &quot;&quot; -#: ../IkiWiki/CGI.pm:279 +#: ../IkiWiki/CGI.pm:280 msgid &quot;Preferences saved.&quot; msgstr &quot;&quot; -#: ../IkiWiki/CGI.pm:338 +#: ../IkiWiki/CGI.pm:339 #, perl-format msgid &quot;%s is not an editable page&quot; msgstr &quot;&quot; -#: ../IkiWiki/CGI.pm:449 ../IkiWiki/Plugin/brokenlinks.pm:33 +#: ../IkiWiki/CGI.pm:450 ../IkiWiki/Plugin/brokenlinks.pm:33 #: ../IkiWiki/Plugin/inline.pm:310 ../IkiWiki/Plugin/opendiscussion.pm:26 #: ../IkiWiki/Plugin/orphans.pm:37 ../IkiWiki/Render.pm:78 #: ../IkiWiki/Render.pm:148 msgid &quot;discussion&quot; msgstr &quot;&quot; -#: ../IkiWiki/CGI.pm:505 +#: ../IkiWiki/CGI.pm:506 #, perl-format msgid &quot;creating %s&quot; msgstr &quot;&quot; -#: ../IkiWiki/CGI.pm:523 ../IkiWiki/CGI.pm:551 ../IkiWiki/CGI.pm:561 -#: ../IkiWiki/CGI.pm:596 ../IkiWiki/CGI.pm:641 +#: ../IkiWiki/CGI.pm:524 ../IkiWiki/CGI.pm:552 ../IkiWiki/CGI.pm:562 +#: ../IkiWiki/CGI.pm:597 ../IkiWiki/CGI.pm:642 #, perl-format msgid &quot;editing %s&quot; msgstr &quot;&quot; -#: ../IkiWiki/CGI.pm:666 +#: ../IkiWiki/CGI.pm:667 msgid &quot;You are banned.&quot; msgstr &quot;&quot; -#: ../IkiWiki/CGI.pm:783 ../IkiWiki/CGI.pm:784 ../IkiWiki.pm:1117 +#: ../IkiWiki/CGI.pm:784 ../IkiWiki/CGI.pm:785 ../IkiWiki.pm:1132 msgid &quot;Error&quot; msgstr &quot;&quot; @@ -673,11 +673,11 @@ msgstr &quot;&quot; msgid &quot;empty data&quot; msgstr &quot;&quot; -#: ../IkiWiki/Plugin/table.pm:101 +#: ../IkiWiki/Plugin/table.pm:100 msgid &quot;Direct data download&quot; msgstr &quot;&quot; -#: ../IkiWiki/Plugin/table.pm:135 +#: ../IkiWiki/Plugin/table.pm:134 #, perl-format msgid &quot;parse fail at line %d: %s&quot; msgstr &quot;&quot; @@ -865,20 +865,20 @@ msgstr &quot;&quot; msgid &quot;refreshing wiki..&quot; msgstr &quot;&quot; (Diff truncated) </pre> </div>