From 2ac1e80db3dbfa1e651bfeac4c13d0db1c3e12bc Mon Sep 17 00:00:00 2001
From: joey
Date: Tue, 4 Apr 2006 18:34:04 +0000
Subject: [PATCH 01/16] fix package name
---
debian/control | 2 +-
doc/bugs.mdwn | 1 -
2 files changed, 1 insertion(+), 2 deletions(-)
diff --git a/debian/control b/debian/control
index 257b2277c..2ecfa219b 100644
--- a/debian/control
+++ b/debian/control
@@ -7,7 +7,7 @@ Standards-Version: 3.6.2
Package: ikiwiki
Architecture: all
-Depends: ${perl:Depends}, markdown, libtime-date-perl, libhtml-template-perl, libcgi-formbuilder-perl, libtime-duration-perl, libcgi-session-perl, libmail-sendmail-perl, gcc | c-compiler
+Depends: ${perl:Depends}, markdown, libtimedate-perl, libhtml-template-perl, libcgi-formbuilder-perl, libtime-duration-perl, libcgi-session-perl, libmail-sendmail-perl, gcc | c-compiler
Recommends: subversion, hyperestraier
Suggests: viewcvs
Description: a wiki compiler
diff --git a/doc/bugs.mdwn b/doc/bugs.mdwn
index 22490300a..5ef78b25a 100644
--- a/doc/bugs.mdwn
+++ b/doc/bugs.mdwn
@@ -38,4 +38,3 @@
breaks things unexpectedly and requires escaping.
* ikiwiki will generate html formatted error messages to the command
line if --cgi is set, even if it's not yet running as a cgi
-* ikiwiki package depends on "libtime-date-perl". Do you mean "libtimedate-perl"?
--
2.39.5
From dd9ec3f5b63cd85d307968977cec2d2a245e640b Mon Sep 17 00:00:00 2001
From: www-data
Date: Tue, 4 Apr 2006 18:36:41 +0000
Subject: [PATCH 02/16] web commit by joey: remove dup
---
doc/bugs.mdwn | 2 --
1 file changed, 2 deletions(-)
diff --git a/doc/bugs.mdwn b/doc/bugs.mdwn
index 5ef78b25a..06cfc976e 100644
--- a/doc/bugs.mdwn
+++ b/doc/bugs.mdwn
@@ -31,8 +31,6 @@
* If a file in the srcdir is removed, exposing a file in the underlaydir,
ikiwiki will not notice the change and rebuild it until the file in the
underlaydir gets a mtime newer than the mtime the removed file had.
-* Pages rendered from files in the underlaydir should not have a history
- link, since there's no file in the svn repo to view the history of.
* Markdown will try to expand stuff inside postprocessordirectives. For
example, if there are two *'s, it will turn them to html em's, which
breaks things unexpectedly and requires escaping.
--
2.39.5
From 46302e698d97d9bf52fabac4858d954cb650bfb8 Mon Sep 17 00:00:00 2001
From: joey
Date: Tue, 4 Apr 2006 18:43:26 +0000
Subject: [PATCH 03/16] Verified that the action parameter on cgi forms is
needed for at least the prefs form. Use $config{cgiurl}.
---
IkiWiki/CGI.pm | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/IkiWiki/CGI.pm b/IkiWiki/CGI.pm
index fa2287e82..ac5365b2f 100644
--- a/IkiWiki/CGI.pm
+++ b/IkiWiki/CGI.pm
@@ -63,8 +63,7 @@ sub cgi_signin ($$) { #{{{
required => 'NONE',
javascript => 0,
params => $q,
- # Why was this added?
- #action => $q->request_uri,
+ action => $config{cgiurl},
header => 0,
template => (-e "$config{templatedir}/signin.tmpl" ?
"$config{templatedir}/signin.tmpl" : ""),
@@ -230,7 +229,7 @@ sub cgi_prefs ($$) { #{{{
required => 'NONE',
javascript => 0,
params => $q,
- action => $q->request_uri,
+ action => $config{cgiurl},
template => (-e "$config{templatedir}/prefs.tmpl" ?
"$config{templatedir}/prefs.tmpl" : ""),
stylesheet => styleurl(),
@@ -294,7 +293,7 @@ sub cgi_editpage ($$) { #{{{
required => [qw{content}],
javascript => 0,
params => $q,
- action => $q->request_uri,
+ action => $config{cgiurl},
table => 0,
template => "$config{templatedir}/editpage.tmpl"
);
--
2.39.5
From a0321594fb72ab1d215204f1838d2593e0b24f95 Mon Sep 17 00:00:00 2001
From: joey
Date: Tue, 4 Apr 2006 18:45:29 +0000
Subject: [PATCH 04/16] use [:alnum:]
---
ikiwiki | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/ikiwiki b/ikiwiki
index f7ccaf743..97afa853f 100755
--- a/ikiwiki
+++ b/ikiwiki
@@ -21,7 +21,7 @@ sub getconfig () { #{{{
wiki_file_prune_regexp => qr{((^|/).svn/|\.\.|^\.|\/\.|\.html?$|\.rss$)},
wiki_link_regexp => qr/\[\[(?:([^\s\]\|]+)\|)?([^\s\]]+)\]\]/,
wiki_processor_regexp => qr/\[\[(\w+)\s+([^\]]+)\]\]/,
- wiki_file_regexp => qr/(^[-A-Za-z0-9_.:\/+]+$)/,
+ wiki_file_regexp => qr/(^[-[:alnum:]_.:\/+]+$)/,
verbose => 0,
wikiname => "wiki",
default_pageext => ".mdwn",
@@ -277,7 +277,7 @@ sub pagetitle ($) { #{{{
sub titlepage ($) { #{{{
my $title=shift;
$title=~y/ /_/;
- $title=~s/([^-A-Za-z0-9_:+\/.])/"__".ord($1)."__"/eg;
+ $title=~s/([^-[:alnum:]_:+\/.])/"__".ord($1)."__"/eg;
return $title;
} #}}}
--
2.39.5
From f50bd57bcebe08d26653299b189fe82beaea4a0f Mon Sep 17 00:00:00 2001
From: joey
Date: Tue, 4 Apr 2006 19:34:50 +0000
Subject: [PATCH 05/16] proper binmode settings so that with -CSD, ikiwiki will
support unicode
however, due to robustness, that's not enabled by default yet
---
IkiWiki/Render.pm | 5 +++--
doc/todo/utf8.mdwn | 27 +++++++++++++++++++++++++++
ikiwiki | 10 +++++++---
3 files changed, 37 insertions(+), 5 deletions(-)
create mode 100644 doc/todo/utf8.mdwn
diff --git a/IkiWiki/Render.pm b/IkiWiki/Render.pm
index 23f6b1c72..de35d24e1 100644
--- a/IkiWiki/Render.pm
+++ b/IkiWiki/Render.pm
@@ -341,8 +341,8 @@ sub render ($) { #{{{
my $type=pagetype($file);
my $srcfile=srcfile($file);
- my $content=readfile($srcfile);
if ($type ne 'unknown') {
+ my $content=readfile($srcfile);
my $page=pagename($file);
$links{$page}=[findlinks($content, $page)];
@@ -366,9 +366,10 @@ sub render ($) { #{{{
}
}
else {
+ my $content=readfile($srcfile, 1);
$links{$file}=[];
check_overwrite("$config{destdir}/$file", $file);
- writefile($file, $config{destdir}, $content);
+ writefile($file, $config{destdir}, $content, 1);
$oldpagemtime{$file}=time;
$renderedfiles{$file}=$file;
}
diff --git a/doc/todo/utf8.mdwn b/doc/todo/utf8.mdwn
new file mode 100644
index 000000000..536ec75b2
--- /dev/null
+++ b/doc/todo/utf8.mdwn
@@ -0,0 +1,27 @@
+ikiwiki should support utf-8 pages, both input and output
+
+Currently ikiwiki is belived to be utf-8 clean itself; it tells perl to use
+binmode when reading possibly binary files (such as images) and it uses
+utf-8 compatable regexps etc.
+
+utf-8 IO is not enabled by default though. While you can probably embed
+utf-8 in pages anyway, ikiwiki will not treat it right in the cases where
+it deals with things on a per-character basis (mostly when escaping and
+de-escaping special characters in filenames).
+
+To enable utf-8, edit ikiwiki and add -CSD to the perl hashbang line.
+(This should probably be configurable via a --utf8 or better --encoding=
+switch.)
+
+The following problems have been observed when running ikiwiki this way:
+
+* If invalid utf-8 creeps into a file, ikiwiki will crash rendering it as
+ follows:
+
+ Malformed UTF-8 character (unexpected continuation byte 0x97, with no preceding start byte) in substitution iterator at /usr/bin/markdown line 1317.
+ Malformed UTF-8 character (fatal) at /usr/bin/markdown line 1317.
+
+ In this example, a literal 0x97 character had gotten into a markdown
+ file.
+
+ Here, let's put one in this file: ""
diff --git a/ikiwiki b/ikiwiki
index 97afa853f..6bf58017d 100755
--- a/ikiwiki
+++ b/ikiwiki
@@ -193,24 +193,27 @@ sub srcfile ($) { #{{{
error("internal error: $file cannot be found");
} #}}}
-sub readfile ($) { #{{{
+sub readfile ($;$) { #{{{
my $file=shift;
+ my $binary=shift;
if (-l $file) {
error("cannot read a symlink ($file)");
}
local $/=undef;
- open (IN, "$file") || error("failed to read $file: $!");
+ open (IN, $file) || error("failed to read $file: $!");
+ binmode(IN) if $binary;
my $ret=;
close IN;
return $ret;
} #}}}
-sub writefile ($$$) { #{{{
+sub writefile ($$$;$) { #{{{
my $file=shift; # can include subdirs
my $destdir=shift; # directory to put file in
my $content=shift;
+ my $binary=shift;
my $test=$file;
while (length $test) {
@@ -232,6 +235,7 @@ sub writefile ($$$) { #{{{
}
open (OUT, ">$destdir/$file") || error("failed to write $destdir/$file: $!");
+ binmode(OUT) if $binary;
print OUT $content;
close OUT;
} #}}}
--
2.39.5
From ca57400d532741da4ff510c6905973e89c65a328 Mon Sep 17 00:00:00 2001
From: joey
Date: Tue, 4 Apr 2006 19:59:00 +0000
Subject: [PATCH 06/16] markdown's overzelous _ and * expansion inside words
can't really be fixed outside of markdown
---
doc/todo/html.mdwn | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/doc/todo/html.mdwn b/doc/todo/html.mdwn
index b22e75283..9f5dc836e 100644
--- a/doc/todo/html.mdwn
+++ b/doc/todo/html.mdwn
@@ -37,7 +37,10 @@ editing the [[templates]] and/or editing [[style.css]] BTW.
Because [ [inlinepage] ] isn't separated by a blank line it gets treated as a block-level element. Hmm, will this stop all formatting, including *'s to em-tags? --[[JeroenSchot]]
- Ah didn't realize you meant it fixed it at the markdown level. I'll think about making [[postprocessordirective]]s into preprocessordirectives instead, then I could use that fix (but I'm not sure how feasible it is to do that). By the way, I am considering adding a hack to prevent markdown's overzealous expansion of \_ and \* inside words. --[[Joey]]
+ Ah didn't realize you meant it fixed it at the markdown level. I'll
+ think about making [[postprocessordirective]]s into
+ preprocessordirectives instead, then I could use that fix (but I'm not
+ sure how feasible it is to do that). --[[Joey]]
This page is now valid.
Test: [validate this page](http://validator.w3.org/check?url=referer)
--
2.39.5
From 7a5ae22e5a5789bf2b1be432cdc7551ab78a5241 Mon Sep 17 00:00:00 2001
From: joey
Date: Tue, 4 Apr 2006 20:57:46 +0000
Subject: [PATCH 07/16] Convert postprocessordirectives into
preprocessordirectives, so they are expanded before markdown. Consequences:
- No need to worry about markdown messing with parameters of
preprocessordirectives. (If you had to escape stuff in one before, you'll
need to undo that escaping now.)
- No need for ugly
hacks before inlined subpages. Instead, subpages
are wrapped in a , and this prevents markdown from touching them.
(This can also be used to add style to subpages.)
- rss generation is less of a hack.
---
IkiWiki/Render.pm | 74 ++++++++++------------------
basewiki/postprocessordirective.mdwn | 11 -----
basewiki/preprocessordirective.mdwn | 11 +++++
doc/bugs.mdwn | 3 --
doc/todo/done/htmlvalidation.mdwn | 45 +++++++++++++++++
doc/todo/html.mdwn | 41 ---------------
doc/todo/utf8.mdwn | 2 -
templates/inlinepage.tmpl | 2 +
8 files changed, 85 insertions(+), 104 deletions(-)
delete mode 100644 basewiki/postprocessordirective.mdwn
create mode 100644 basewiki/preprocessordirective.mdwn
create mode 100644 doc/todo/done/htmlvalidation.mdwn
diff --git a/IkiWiki/Render.pm b/IkiWiki/Render.pm
index de35d24e1..7148d754e 100644
--- a/IkiWiki/Render.pm
+++ b/IkiWiki/Render.pm
@@ -86,12 +86,11 @@ sub rsspage ($) { #{{{
return $page.".rss";
} #}}}
-sub postprocess { #{{{
- # Takes content to postprocess followed by a list of postprocessor
- # commands and subroutine references to run for the commands.
+sub preprocess ($$) { #{{{
my $page=shift;
my $content=shift;
- my %commands=@_;
+
+ my %commands=(inline => \&preprocess_inline);
my $handle=sub {
my $escape=shift;
@@ -146,7 +145,7 @@ sub get_inline_content ($$) { #{{{
}
} #}}}
-sub postprocess_html_inline { #{{{
+sub preprocess_inline ($@) { #{{{
my $parentpage=shift;
my %params=@_;
@@ -160,7 +159,7 @@ sub postprocess_html_inline { #{{{
$params{show}=10;
}
$inlinepages{$parentpage}=$params{pages};
-
+
my $ret="";
if (exists $params{rootpage}) {
@@ -177,8 +176,10 @@ sub postprocess_html_inline { #{{{
? "$config{templatedir}/inlinepage.tmpl"
: "$config{templatedir}/inlinepagetitle.tmpl"));
+ my @pages;
foreach my $page (blog_list($params{pages}, $params{show})) {
next if $page eq $parentpage;
+ push @pages, $page;
$template->param(pagelink => htmllink($parentpage, $page));
$template->param(content => get_inline_content($parentpage, $page))
if $params{archive} eq "no";
@@ -186,7 +187,15 @@ sub postprocess_html_inline { #{{{
$ret.=$template->output;
}
- return "$ret
";
+ # TODO: should really add this to renderedfiles and call
+ # check_overwrite, but currently renderedfiles
+ # only supports listing one file per page.
+ if ($config{rss}) {
+ writefile(rsspage($parentpage), $config{destdir},
+ genrss($parentpage, @pages));
+ }
+
+ return $ret;
} #}}}
sub genpage ($$$) { #{{{
@@ -194,8 +203,6 @@ sub genpage ($$$) { #{{{
my $page=shift;
my $mtime=shift;
- $content = postprocess($page, $content, inline => \&postprocess_html_inline);
-
my $title=pagetitle(basename($page));
my $template=HTML::Template->new(blind_cache => 1,
@@ -255,10 +262,9 @@ sub absolute_urls ($$) { #{{{
return $content;
} #}}}
-sub genrss ($$$) { #{{{
- my $content=shift;
+sub genrss ($@) { #{{{
my $page=shift;
- my $mtime=shift;
+ my @pages=@_;
my $url="$config{url}/".htmlpage($page);
@@ -266,33 +272,14 @@ sub genrss ($$$) { #{{{
filename => "$config{templatedir}/rsspage.tmpl");
my @items;
- my $isblog=0;
- my $gen_blog=sub {
- my $parentpage=shift;
- my %params=@_;
-
- if (! exists $params{show}) {
- $params{show}=10;
- }
- if (! exists $params{pages}) {
- return "";
- }
-
- $isblog=1;
- foreach my $page (blog_list($params{pages}, $params{show})) {
- next if $page eq $parentpage;
- push @items, {
- itemtitle => pagetitle(basename($page)),
- itemurl => "$config{url}/$renderedfiles{$page}",
- itempubdate => date_822($pagectime{$page}),
- itemcontent => absolute_urls(get_inline_content($parentpage, $page), $url),
- } if exists $renderedfiles{$page};
- }
-
- return "";
- };
-
- $content = postprocess($page, $content, inline => $gen_blog);
+ foreach my $p (@pages) {
+ push @items, {
+ itemtitle => pagetitle(basename($p)),
+ itemurl => "$config{url}/$renderedfiles{$p}",
+ itempubdate => date_822($pagectime{$p}),
+ itemcontent => absolute_urls(get_inline_content($page, $p), $url),
+ } if exists $renderedfiles{$p};
+ }
$template->param(
title => $config{wikiname},
@@ -349,6 +336,7 @@ sub render ($) { #{{{
delete $inlinepages{$page};
$content=linkify($content, $page);
+ $content=preprocess($page, $content);
$content=htmlize($type, $content);
check_overwrite("$config{destdir}/".htmlpage($page), $page);
@@ -356,14 +344,6 @@ sub render ($) { #{{{
genpage($content, $page, mtime($srcfile)));
$oldpagemtime{$page}=time;
$renderedfiles{$page}=htmlpage($page);
-
- # TODO: should really add this to renderedfiles and call
- # check_overwrite, as above, but currently renderedfiles
- # only supports listing one file per page.
- if ($config{rss} && exists $inlinepages{$page}) {
- writefile(rsspage($page), $config{destdir},
- genrss($content, $page, mtime($srcfile)));
- }
}
else {
my $content=readfile($srcfile, 1);
diff --git a/basewiki/postprocessordirective.mdwn b/basewiki/postprocessordirective.mdwn
deleted file mode 100644
index fa8432e3f..000000000
--- a/basewiki/postprocessordirective.mdwn
+++ /dev/null
@@ -1,11 +0,0 @@
-Postprocessor directives are similar to a [[WikiLink]] in form, except they
-contain spaces and parameters. The general form is:
-
-\\[[directive param="value" param="value"]]
-
-This gets expanded after the rest of the page is processed, and can be used
-to transform the page in various ways.
-
-Currently, these postprocessor directives are available:
-
-* "inline" to make a [[blog]]
diff --git a/basewiki/preprocessordirective.mdwn b/basewiki/preprocessordirective.mdwn
new file mode 100644
index 000000000..a7d1be8c8
--- /dev/null
+++ b/basewiki/preprocessordirective.mdwn
@@ -0,0 +1,11 @@
+Preprocessor directives are similar to a [[WikiLink]] in form, except they
+contain spaces and parameters. The general form is:
+
+\\[[directive param="value" param="value"]]
+
+This gets expanded before the rest of the page is processed, and can be used
+to transform the page in various ways.
+
+Currently, these preprocessor directives are available:
+
+* "inline" to make a [[blog]]
diff --git a/doc/bugs.mdwn b/doc/bugs.mdwn
index 06cfc976e..bf4ffb53c 100644
--- a/doc/bugs.mdwn
+++ b/doc/bugs.mdwn
@@ -31,8 +31,5 @@
* If a file in the srcdir is removed, exposing a file in the underlaydir,
ikiwiki will not notice the change and rebuild it until the file in the
underlaydir gets a mtime newer than the mtime the removed file had.
-* Markdown will try to expand stuff inside postprocessordirectives. For
- example, if there are two *'s, it will turn them to html em's, which
- breaks things unexpectedly and requires escaping.
* ikiwiki will generate html formatted error messages to the command
line if --cgi is set, even if it's not yet running as a cgi
diff --git a/doc/todo/done/htmlvalidation.mdwn b/doc/todo/done/htmlvalidation.mdwn
new file mode 100644
index 000000000..6b8d0e7c9
--- /dev/null
+++ b/doc/todo/done/htmlvalidation.mdwn
@@ -0,0 +1,45 @@
+ * Doctype is XHTML 1.0 Strict
+
+ One consideration of course is that regular users might embed html
+ that uses deprecated presentational elements like <center>. At
+ least firefox seems to handle that mixture ok.
+ --[[Joey]]
+
+ * [ [inlinepage] ] gets wrapped in <p>...</p> which has a high chance of invalidating the page.
+
+ Since markdown does this, the only way I can think to fix it is to
+ make the inlined page text start with </p> and end with
+ <p>. Ugly, and of course there could be problems with
+ markdown enclosing it in other spanning tags in some cases.
+ I've implemented this hack now. :-/ --[[Joey]]
+
+ I used this 'hack' myself, but yesterday I came up with a better idea:
+ <div class="inlinepage">
+ [ [inlinepage] ]
+ </div>
+ This prevents markdown enclosing and even adds a useful css identifier. Problem is that this should be added to every page and not in the template(s). --[[JeroenSchot]]
+
+ I can make ikiwiki add that around every inlined page easily
+ enough. However, where is it documented? Came up dry on google.
+ --[[Joey]]
+
+ From :
+ > The only restrictions are that block-level HTML elements e.g. <div>, <table>, <pre>, <p>, etc. must be separated from surrounding content by blank lines, and the start and end tags of the block should not be indented with tabs or spaces. Markdown is smart enough not to add extra (unwanted) <p> tags around HTML block-level tags. [snip]
+ > Note that Markdown formatting syntax is not processed within
+ > block-level HTML tags. E.g., you can't use Markdown-style \*emphasis\* inside an HTML block.
+
+ Because [ [inlinepage] ] isn't separated by a blank line it gets treated as a block-level element. Hmm, will this stop all formatting, including *'s to em-tags? --[[JeroenSchot]]
+
+ Ah didn't realize you meant it fixed it at the markdown level. I'll
+ think about making [[postprocessordirective]]s into
+ [[preprocessordirective]]s instead, then I could use that fix (but I'm not
+ sure how feasible it is to do that). --[[Joey]]
+
+ Done.. inlining is now a preprocessor directive, happens before
+ markdown, and the inlinepage template uses div as suggested, this does
+ prevent markdown from doing any annoying escaping of the preprocessor
+ directives, as well as preventing it wrapping subpages in <p>.
+ --[[Joey]]
+
+This page is now valid.
+Test: [validate this page](http://validator.w3.org/check?url=referer)
diff --git a/doc/todo/html.mdwn b/doc/todo/html.mdwn
index 9f5dc836e..51f669a13 100644
--- a/doc/todo/html.mdwn
+++ b/doc/todo/html.mdwn
@@ -3,44 +3,3 @@ formatting, and images to indicate web vs svn commits and to link to diffs.
All of this should be doable w/o touching a single line of code, just
editing the [[templates]] and/or editing [[style.css]] BTW.
-
-## html validation
-
- * Doctype is XHTML 1.0 Strict
-
- One consideration of course is that regular users might embed html
- that uses deprecated presentational elements like <center>. At
- least firefox seems to handle that mixture ok.
- --[[Joey]]
-
- * [ [inlinepage] ] gets wrapped in <p>...</p> which has a high chance of invalidating the page.
-
- Since markdown does this, the only way I can think to fix it is to
- make the inlined page text start with </p> and end with
- <p>. Ugly, and of course there could be problems with
- markdown enclosing it in other spanning tags in some cases.
- I've implemented this hack now. :-/ --[[Joey]]
-
- I used this 'hack' myself, but yesterday I came up with a better idea:
- <div class="inlinepage">
- [ [inlinepage] ]
- </div>
- This prevents markdown enclosing and even adds a useful css identifier. Problem is that this should be added to every page and not in the template(s). --[[JeroenSchot]]
-
- I can make ikiwiki add that around every inlined page easily
- enough. However, where is it documented? Came up dry on google.
- --[[Joey]]
-
- From :
- > The only restrictions are that block-level HTML elements e.g. <div>, <table>, <pre>, <p>, etc. must be separated from surrounding content by blank lines, and the start and end tags of the block should not be indented with tabs or spaces. Markdown is smart enough not to add extra (unwanted) <p> tags around HTML block-level tags. [snip]
- > Note that Markdown formatting syntax is not processed within block-level HTML tags. E.g., you cant use Markdown-style \*emphasis\* inside an HTML block.
-
- Because [ [inlinepage] ] isn't separated by a blank line it gets treated as a block-level element. Hmm, will this stop all formatting, including *'s to em-tags? --[[JeroenSchot]]
-
- Ah didn't realize you meant it fixed it at the markdown level. I'll
- think about making [[postprocessordirective]]s into
- preprocessordirectives instead, then I could use that fix (but I'm not
- sure how feasible it is to do that). --[[Joey]]
-
-This page is now valid.
-Test: [validate this page](http://validator.w3.org/check?url=referer)
diff --git a/doc/todo/utf8.mdwn b/doc/todo/utf8.mdwn
index 536ec75b2..822177487 100644
--- a/doc/todo/utf8.mdwn
+++ b/doc/todo/utf8.mdwn
@@ -23,5 +23,3 @@ The following problems have been observed when running ikiwiki this way:
In this example, a literal 0x97 character had gotten into a markdown
file.
-
- Here, let's put one in this file: ""
diff --git a/templates/inlinepage.tmpl b/templates/inlinepage.tmpl
index 38834c0b2..397ac860c 100644
--- a/templates/inlinepage.tmpl
+++ b/templates/inlinepage.tmpl
@@ -1,3 +1,4 @@
+
@@ -5,3 +6,4 @@
(posted )
+
--
2.39.5
From a56edf45415c7354a5e99c0ffb7157a990a3f2d0 Mon Sep 17 00:00:00 2001
From: www-data
Date: Tue, 4 Apr 2006 21:04:40 +0000
Subject: [PATCH 08/16] web commit by joey: remove no longer relevant note
(underlaid now)
---
doc/news/now_with_style.mdwn | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/doc/news/now_with_style.mdwn b/doc/news/now_with_style.mdwn
index 0149b2932..9f4237683 100644
--- a/doc/news/now_with_style.mdwn
+++ b/doc/news/now_with_style.mdwn
@@ -1,5 +1 @@
-Ikiwiki also supports style sheets now. I've not done too much with the default style sheet, but you can customise [[style.css]] to do whatever you like with the look of your wiki.
-
----
-
-*Note* that if you upgrade from an earlier version, you'll need to copy [[style.css]] into your wiki.
\ No newline at end of file
+Ikiwiki also supports style sheets now. I've not done too much with the default style sheet, but you can customise [[style.css]] to do whatever you like with the look of your wiki.
\ No newline at end of file
--
2.39.5
From f0ac5963b6c21c75f26cb7476ee91dd7f56837e3 Mon Sep 17 00:00:00 2001
From: joey
Date: Tue, 4 Apr 2006 21:04:45 +0000
Subject: [PATCH 09/16] renamed
---
basewiki/markdown.mdwn | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/basewiki/markdown.mdwn b/basewiki/markdown.mdwn
index 3684fe5c1..57fb259f8 100644
--- a/basewiki/markdown.mdwn
+++ b/basewiki/markdown.mdwn
@@ -5,4 +5,6 @@ email messages. It is the markup language used by this wiki.
For documentation about the markdown syntax, see [[HelpOnFormatting]] and
[Markdown: syntax](http://daringfireball.net/projects/markdown/syntax).
-Note that [[WikiLink]]s and [[PostProcessorDirective]]s are not part of the markdown syntax, and are the only bit of markup that this wiki handles internally.
+Note that [[WikiLink]]s and [[PreProcessorDirective]]s are not part of the
+markdown syntax, and are the only bit of markup that this wiki handles
+internally.
--
2.39.5
From 35e72f56c1b42ca13abd5f9af1924495a173d1ec Mon Sep 17 00:00:00 2001
From: joey
Date: Tue, 4 Apr 2006 21:11:11 +0000
Subject: [PATCH 10/16] moving away from regenning wiki on every upgrade, added
a variable to control when to do it
---
debian/postinst | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/debian/postinst b/debian/postinst
index e716fb2f5..e84955daf 100755
--- a/debian/postinst
+++ b/debian/postinst
@@ -2,6 +2,10 @@
set -e
#DEBHELPER#
+# Change this when some incompatible change is made that requires
+# rebuilding all wikis.
+firstcompat=0.1
+
wikilist=/etc/ikiwiki/wikilist
processline () {
@@ -21,7 +25,8 @@ processline () {
fi
}
-if [ "$1" = configure ] && [ -e $wikilist ]; then
+if [ "$1" = configure ] && [ -e $wikilist ] && \
+ dpkg --compare-versions "$2" lt "$firstcompat"; then
grep -v '^#' $wikilist | grep -v '^$' | while read line; do
processline $line
done
--
2.39.5
From be64190bbd67ad049be90a02fe9c5963d8661af5 Mon Sep 17 00:00:00 2001
From: www-data
Date: Thu, 6 Apr 2006 18:59:55 +0000
Subject: [PATCH 11/16] web commit by kcr
---
doc/sandbox.mdwn | 1 +
1 file changed, 1 insertion(+)
diff --git a/doc/sandbox.mdwn b/doc/sandbox.mdwn
index 9343b6215..cc1dbb1aa 100644
--- a/doc/sandbox.mdwn
+++ b/doc/sandbox.mdwn
@@ -33,6 +33,7 @@ Bulleted list
* test
* hi mom
* [[foo_(1975-)]]
+* frogs.
[[WikiLink]]
--
2.39.5
From 76aae79a9dbc0e8994cc21a053e4bc30c1875442 Mon Sep 17 00:00:00 2001
From: joey
Date: Fri, 7 Apr 2006 23:59:30 +0000
Subject: [PATCH 12/16] typo
---
doc/usage.mdwn | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/doc/usage.mdwn b/doc/usage.mdwn
index 228d4e595..2821cea68 100644
--- a/doc/usage.mdwn
+++ b/doc/usage.mdwn
@@ -22,7 +22,7 @@ These options control the mode that ikiwiki is operating in.
* --refresh
- Refresh the wiki, updating any changes pages. This is the default
+ Refresh the wiki, updating any changed pages. This is the default
behavior so you don't normally need to specify it.
* --rebuild
--
2.39.5
From 496fe5ea8dd3dc9a0c65cc224539a560ca341075 Mon Sep 17 00:00:00 2001
From: joey
Date: Mon, 10 Apr 2006 05:22:35 +0000
Subject: [PATCH 13/16] add basic borders around blog posts
not sure I'm 100% happy with this look, but it's better than naught
---
basewiki/style.css | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/basewiki/style.css b/basewiki/style.css
index c7ed9107e..2e0141050 100644
--- a/basewiki/style.css
+++ b/basewiki/style.css
@@ -31,6 +31,11 @@
color: black !important;
}
+.inlinepage {
+ padding: 10px 10px;
+ border: 1px solid #aaa;
+}
+
#backlinks {
margin: 1em 0;
}
--
2.39.5
From 9e928108dd52d084a3a15f7689d57869c34f3c88 Mon Sep 17 00:00:00 2001
From: www-data
Date: Mon, 10 Apr 2006 05:27:56 +0000
Subject: [PATCH 14/16] web commit by joey
---
doc/news.mdwn | 2 --
1 file changed, 2 deletions(-)
diff --git a/doc/news.mdwn b/doc/news.mdwn
index 039643a86..cc2adcbc1 100644
--- a/doc/news.mdwn
+++ b/doc/news.mdwn
@@ -2,6 +2,4 @@ This is where annoucements of new releases, features, and other news is posted.
[[inline pages="news/* !*/Discussion" rootpage="news" show="30"]]
-----
-
By the way, some other pages with RSS feeds about ikiwiki include [[TODO]] and [[TODO/done]].
\ No newline at end of file
--
2.39.5
From c0659dcb6c864063c94ee9c6094e097938b461fe Mon Sep 17 00:00:00 2001
From: joey
Date: Mon, 10 Apr 2006 05:33:41 +0000
Subject: [PATCH 15/16] bug
---
doc/bugs.mdwn | 3 +++
1 file changed, 3 insertions(+)
diff --git a/doc/bugs.mdwn b/doc/bugs.mdwn
index bf4ffb53c..a8e9ae679 100644
--- a/doc/bugs.mdwn
+++ b/doc/bugs.mdwn
@@ -33,3 +33,6 @@
underlaydir gets a mtime newer than the mtime the removed file had.
* ikiwiki will generate html formatted error messages to the command
line if --cgi is set, even if it's not yet running as a cgi
+* if a page containing an rss feed happens to show up in an rss feed,
+ the preprocessor directives won't be expanded (good) but are left in
+ raw rather than removed (bad)
--
2.39.5
From 3ff14ce12a0433ab687f257f6d11f2ebde311608 Mon Sep 17 00:00:00 2001
From: joey
Date: Fri, 14 Apr 2006 18:10:18 +0000
Subject: [PATCH 16/16] fix --anonok
---
IkiWiki/CGI.pm | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/IkiWiki/CGI.pm b/IkiWiki/CGI.pm
index ac5365b2f..8201351ca 100644
--- a/IkiWiki/CGI.pm
+++ b/IkiWiki/CGI.pm
@@ -516,9 +516,9 @@ sub cgi () { #{{{
umask($oldmask);
# Everything below this point needs the user to be signed in.
- if ((! $config{anonok} && ! defined $session->param("name") ||
- ! defined $session->param("name") ||
- ! userinfo_get($session->param("name"), "regdate")) || $do eq 'signin') {
+ if ((! $config{anonok} &&
+ (! defined $session->param("name") ||
+ ! userinfo_get($session->param("name"), "regdate"))) || $do eq 'signin') {
cgi_signin($q, $session);
# Force session flush with safe umask.
--
2.39.5