commit
825e2b1378
|
@ -35,6 +35,7 @@ Text::WikiCreole
|
|||
Term::ReadLine::Gnu
|
||||
HTML::Tree
|
||||
Authen::Passphrase
|
||||
Sort::Naturally
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
|
|
|
@ -533,7 +533,7 @@ sub loadplugins () {
|
|||
|
||||
run_hooks(getopt => sub { shift->() });
|
||||
if (grep /^-/, @ARGV) {
|
||||
print STDERR "Unknown option: $_\n"
|
||||
print STDERR "Unknown option (or missing parameter): $_\n"
|
||||
foreach grep /^-/, @ARGV;
|
||||
usage();
|
||||
}
|
||||
|
@ -639,8 +639,10 @@ sub pagetype ($) {
|
|||
if ($file =~ /\.([^.]+)$/) {
|
||||
return $1 if exists $hooks{htmlize}{$1};
|
||||
}
|
||||
elsif ($hooks{htmlize}{basename($file)}{noextension}) {
|
||||
return basename($file);
|
||||
my $base=basename($file);
|
||||
if (exists $hooks{htmlize}{$base} &&
|
||||
$hooks{htmlize}{$base}{noextension}) {
|
||||
return $base;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
@ -67,7 +67,8 @@ sub cgi_page_from_404 ($$$) {
|
|||
sub cgi ($) {
|
||||
my $cgi=shift;
|
||||
|
||||
if ($ENV{REDIRECT_STATUS} eq '404') {
|
||||
if (exists $ENV{REDIRECT_STATUS} &&
|
||||
$ENV{REDIRECT_STATUS} eq '404') {
|
||||
my $page = cgi_page_from_404($ENV{REDIRECT_URL},
|
||||
$config{url}, $config{usedirs});
|
||||
IkiWiki::Plugin::goto::cgi_goto($cgi, $page);
|
||||
|
|
|
@ -224,7 +224,7 @@ sub preprocess {
|
|||
|
||||
if ($params{page} =~ m/\/(\Q$config{comments_pagename}\E\d+)$/) {
|
||||
$pagestate{$page}{meta}{permalink} = urlto(IkiWiki::dirname($params{page}), undef, 1).
|
||||
"#".$params{page};
|
||||
"#".page_to_id($params{page});
|
||||
}
|
||||
|
||||
eval q{use Date::Parse};
|
||||
|
@ -490,7 +490,8 @@ sub editcomment ($$) {
|
|||
# Jump to the new comment on the page.
|
||||
# The trailing question mark tries to avoid broken
|
||||
# caches and get the most recent version of the page.
|
||||
IkiWiki::redirect($cgi, urlto($page, undef, 1)."?updated#$location");
|
||||
IkiWiki::redirect($cgi, urlto($page, undef, 1).
|
||||
"?updated#".page_to_id($location));
|
||||
|
||||
}
|
||||
else {
|
||||
|
@ -672,7 +673,7 @@ sub previewcomment ($$$) {
|
|||
sub commentsshown ($) {
|
||||
my $page=shift;
|
||||
|
||||
return ! pagespec_match($page, "*/$config{comments_pagename}*",
|
||||
return ! pagespec_match($page, "internal(*/$config{comments_pagename}*)",
|
||||
location => $page) &&
|
||||
pagespec_match($page, $config{comments_pagespec},
|
||||
location => $page);
|
||||
|
@ -759,6 +760,10 @@ sub pagetemplate (@) {
|
|||
if (!exists $commentstate{$page}) {
|
||||
return;
|
||||
}
|
||||
|
||||
if ($template->query(name => 'commentid')) {
|
||||
$template->param(commentid => page_to_id($page));
|
||||
}
|
||||
|
||||
if ($template->query(name => 'commentuser')) {
|
||||
$template->param(commentuser =>
|
||||
|
@ -808,6 +813,18 @@ sub unique_comment_location ($) {
|
|||
return $location;
|
||||
}
|
||||
|
||||
sub page_to_id ($) {
|
||||
# Converts a comment page name into a unique, legal html id
|
||||
# addtibute value, that can be used as an anchor to link to the
|
||||
# comment.
|
||||
my $page=shift;
|
||||
|
||||
eval q{use Digest::MD5 'md5_hex'};
|
||||
error($@) if $@;
|
||||
|
||||
return "comment-".md5_hex($page);
|
||||
}
|
||||
|
||||
package IkiWiki::PageSpec;
|
||||
|
||||
sub match_postcomment ($$;@) {
|
||||
|
|
|
@ -136,14 +136,16 @@ sub safe_git (&@) {
|
|||
}
|
||||
# In parent.
|
||||
|
||||
# git output is probably utf-8 encoded, but may contain
|
||||
# other encodings or invalidly encoded stuff. So do not rely
|
||||
# on the normal utf-8 IO layer, decode it by hand.
|
||||
binmode($OUT);
|
||||
|
||||
my @lines;
|
||||
while (<$OUT>) {
|
||||
$_=decode_utf8($_, 0);
|
||||
|
||||
chomp;
|
||||
|
||||
# check for invalid utf-8, and toss it back to avoid crashes
|
||||
if (! utf8::valid($_)) {
|
||||
$_=encode_utf8($_);
|
||||
}
|
||||
|
||||
push @lines, $_;
|
||||
}
|
||||
|
@ -447,7 +449,7 @@ sub rcs_commit_staged ($$$) {
|
|||
# Set the commit author and email to the web committer.
|
||||
my %env=%ENV;
|
||||
if (defined $user || defined $ipaddr) {
|
||||
my $u=defined $user ? $user : $ipaddr;
|
||||
my $u=encode_utf8(defined $user ? $user : $ipaddr);
|
||||
$ENV{GIT_AUTHOR_NAME}=$u;
|
||||
$ENV{GIT_AUTHOR_EMAIL}="$u\@web";
|
||||
}
|
||||
|
@ -592,8 +594,8 @@ sub rcs_getctime ($) {
|
|||
# Remove srcdir prefix
|
||||
$file =~ s/^\Q$config{srcdir}\E\/?//;
|
||||
|
||||
my $sha1 = git_sha1($file);
|
||||
my $ci = git_commit_info($sha1, 1);
|
||||
my @sha1s = run_or_non('git', 'rev-list', 'HEAD', '--', $file);
|
||||
my $ci = git_commit_info($sha1s[$#sha1s], 1);
|
||||
my $ctime = $ci->{'author_epoch'};
|
||||
debug("ctime for '$file': ". localtime($ctime));
|
||||
|
||||
|
|
|
@ -194,6 +194,13 @@ sub preprocess_inline (@) {
|
|||
if (exists $params{sort} && $params{sort} eq 'title') {
|
||||
@list=sort { pagetitle(basename($a)) cmp pagetitle(basename($b)) } @list;
|
||||
}
|
||||
elsif (exists $params{sort} && $params{sort} eq 'title_natural') {
|
||||
eval q{use Sort::Naturally};
|
||||
if ($@) {
|
||||
error(gettext("Sort::Naturally needed for title_natural sort"));
|
||||
}
|
||||
@list=sort { Sort::Naturally::ncmp(pagetitle(basename($a)), pagetitle(basename($b))) } @list;
|
||||
}
|
||||
elsif (exists $params{sort} && $params{sort} eq 'mtime') {
|
||||
@list=sort { $pagemtime{$b} <=> $pagemtime{$a} } @list;
|
||||
}
|
||||
|
@ -274,8 +281,8 @@ sub preprocess_inline (@) {
|
|||
}
|
||||
}
|
||||
|
||||
my $rssurl=basename($feedbase."rss".$feednum) if $feeds && $rss;
|
||||
my $atomurl=basename($feedbase."atom".$feednum) if $feeds && $atom;
|
||||
my $rssurl=abs2rel($feedbase."rss".$feednum, dirname(htmlpage($params{destpage}))) if $feeds && $rss;
|
||||
my $atomurl=abs2rel($feedbase."atom".$feednum, dirname(htmlpage($params{destpage}))) if $feeds && $atom;
|
||||
|
||||
my $ret="";
|
||||
|
||||
|
|
|
@ -236,7 +236,7 @@ sub rcs_getctime ($) {
|
|||
|
||||
# XXX filename passes through the shell here, should try to avoid
|
||||
# that just in case
|
||||
my @cmdline = ("hg", "-R", $config{srcdir}, "log", "-v", "-l", '1',
|
||||
my @cmdline = ("hg", "-R", $config{srcdir}, "log", "-v",
|
||||
"--style", "default", "$config{srcdir}/$file");
|
||||
open (my $out, "@cmdline |");
|
||||
|
||||
|
@ -249,7 +249,7 @@ sub rcs_getctime ($) {
|
|||
eval q{use Date::Parse};
|
||||
error($@) if $@;
|
||||
|
||||
my $ctime = str2time($log[0]->{"date"});
|
||||
my $ctime = str2time($log[$#log]->{"date"});
|
||||
return $ctime;
|
||||
}
|
||||
|
||||
|
|
|
@ -1,3 +1,27 @@
|
|||
ikiwiki (3.09) UNRELEASED; urgency=low
|
||||
|
||||
* inline: Add title_natural sort order, using Sort::Naturally
|
||||
(chrysn)
|
||||
* inline: Fix urls to feed when feedfile is used on an index page.
|
||||
* git, mercurial: Fix --getctime to return file creation time,
|
||||
not last commit time.
|
||||
* Updated French translation (Jean-Luc Coulon). Closes: #521072
|
||||
* css: Add clear: both to inlinefooter.
|
||||
* comments: Fix too loose test for comments pages that matched
|
||||
normal pages with "comment_" in their name. Closes: #521322
|
||||
* comments: Fix anchor ids to be legal xhtml. Closes: #521339
|
||||
|
||||
-- Joey Hess <joeyh@debian.org> Thu, 19 Mar 2009 15:32:49 -0400
|
||||
|
||||
ikiwiki (3.08) unstable; urgency=low
|
||||
|
||||
* git: Fix utf-8 encoding of author names.
|
||||
* git: Manually decode git output from utf-8, avoids
|
||||
warning messages on invalidly encoded output.
|
||||
* Fix bug that caused weird things to appear as page types.
|
||||
|
||||
-- Joey Hess <joeyh@debian.org> Sun, 15 Mar 2009 17:54:47 -0400
|
||||
|
||||
ikiwiki (3.07) unstable; urgency=low
|
||||
|
||||
* Updated German translation (Kai Wasserbäch). Closes: #518377
|
||||
|
|
|
@ -14,7 +14,7 @@ Package: ikiwiki
|
|||
Architecture: all
|
||||
Depends: ${misc:Depends}, ${perl:Depends}, libtext-markdown-perl | markdown, libhtml-scrubber-perl, libhtml-template-perl, libhtml-parser-perl, liburi-perl
|
||||
Recommends: gcc | c-compiler, libc6-dev | libc-dev, subversion | git-core (>= 1:1.5.0) | tla | bzr (>= 0.91) | mercurial | monotone (>= 0.38), libxml-simple-perl, libnet-openid-consumer-perl, liblwpx-paranoidagent-perl, libtimedate-perl, libcgi-formbuilder-perl (>= 3.05), libcgi-session-perl (>= 4.14-1), libmail-sendmail-perl, libauthen-passphrase-perl, libterm-readline-gnu-perl
|
||||
Suggests: viewvc | gitweb | viewcvs, libsearch-xapian-perl, xapian-omega (>= 1.0.5), librpc-xml-perl, libtext-wikiformat-perl, python, python-docutils, polygen, tidy, libhtml-tree-perl, libxml-feed-perl, libmailtools-perl, perlmagick, libfile-mimeinfo-perl, libcrypt-ssleay-perl, liblocale-gettext-perl (>= 1.05-1), libtext-typography-perl, libtext-csv-perl, libdigest-sha1-perl, graphviz, libnet-amazon-s3-perl, sparkline-php, texlive, dvipng, libtext-wikicreole-perl, po4a (>= 0.35-1), gettext
|
||||
Suggests: viewvc | gitweb | viewcvs, libsearch-xapian-perl, xapian-omega (>= 1.0.5), librpc-xml-perl, libtext-wikiformat-perl, python, python-docutils, polygen, tidy, libhtml-tree-perl, libxml-feed-perl, libmailtools-perl, perlmagick, libfile-mimeinfo-perl, libcrypt-ssleay-perl, liblocale-gettext-perl (>= 1.05-1), libtext-typography-perl, libtext-csv-perl, libdigest-sha1-perl, graphviz, libnet-amazon-s3-perl, sparkline-php, texlive, dvipng, libtext-wikicreole-perl, libsort-naturally-perl, po4a (>= 0.35-1), gettext
|
||||
Conflicts: ikiwiki-plugin-table
|
||||
Replaces: ikiwiki-plugin-table
|
||||
Provides: ikiwiki-plugin-table
|
||||
|
|
|
@ -0,0 +1,17 @@
|
|||
The message generated for web commits:
|
||||
|
||||
> web commit by mädduck
|
||||
|
||||
is not utf-8 encoded before passed to Git (which uses utf-8 as default encoding for commit messages). This causes a wrongly-encoded log entry, and makes ikiwiki spew warnings as it creates `recentchanges`:
|
||||
|
||||
utf8 "\xF6" does not map to Unicode at /usr/share/perl5/IkiWiki/Rcs/git.pm line 36, <$OUT> line 57.
|
||||
Malformed UTF-8 character (unexpected non-continuation byte 0x6e, immediately after start byte 0xf6) in pattern match (m//) at /usr/share/perl5/IkiWiki/Rcs/git.pm line 393.
|
||||
utf8 "\xF6" does not map to Unicode at /usr/share/perl5/IkiWiki/Rcs/git.pm line 36, <$OUT> line 5.
|
||||
|
||||
(This is version 2.53.3~bpo40+1 for lack of a newer backport for sarge)
|
||||
|
||||
Please make sure that commit messages for Git are always utf-8.
|
||||
|
||||
This is a change by user `mädduck` to trigger the error.
|
||||
|
||||
> [[Fixed|done]] both on the commit and log sides. --[[Joey]]
|
|
@ -0,0 +1,7 @@
|
|||
[[!meta title="feedfile does the wrong thing from index"]]
|
||||
|
||||
When I put the following !inline in my index.mdwn, it generate a file called index/graphics.rss. However, the link in the RSS button is to graphics.rss (i.e., not in the index/ directory).
|
||||
|
||||
`\[[!inline pages="link(tags/graphics) and ./posts/* and !*/Discussion" show="10" feedfile=graphics feedonly=yes]]`
|
||||
|
||||
[[done]] --[[Joey]]
|
|
@ -9,7 +9,7 @@ gnomes will convert them to css files..)
|
|||
|
||||
* **[[css_market/zack.css]]**, contributed by [[StefanoZacchiroli]],
|
||||
customized mostly for *blogging purposes*, can be seen in action on
|
||||
[zack's blog](http://www.bononia.it/~zack/blog/)
|
||||
[zack's blog](http://upsilon.cc/~zack/blog/)
|
||||
[[!meta stylesheet="zack"]]
|
||||
|
||||
* **[[css_market/kirkambar.css]]**, contributed by [[Roktas]]. This far from perfect
|
||||
|
|
|
@ -5,3 +5,12 @@ What is the correct way to install the .tmpl files? -- [[JosephTurian]]
|
|||
> ikiwiki's standard templates (in, eg `/usr/share/ikiwiki/templates`)
|
||||
> --[[Joey]]
|
||||
|
||||
----
|
||||
|
||||
How can I update a .css file uploaded to the CSS market?
|
||||
My CSS has been updated to address comments (for the comments plugin), but I cannot find a way to update zack.css.
|
||||
The most recent version is always available at: <http://git.upsilon.cc/cgi-bin/gitweb.cgi?p=zack-homepage.git;a=blob_plain;f=local.css;hb=HEAD>
|
||||
|
||||
-- [[StefanoZacchiroli]]
|
||||
|
||||
> Just letting me know about the change works -- updated. --[[Joey]]
|
||||
|
|
|
@ -14,122 +14,180 @@
|
|||
*/
|
||||
|
||||
body {
|
||||
font-family: sans;
|
||||
width: 760px;
|
||||
margin-left: 20px;
|
||||
font-family: sans-serif;
|
||||
font-size: medium;
|
||||
}
|
||||
h1, h2, h3, h4 {
|
||||
font-weight: normal;
|
||||
}
|
||||
h1 { font-size: 140%; }
|
||||
h2 { font-size: 120%; }
|
||||
h3 { font-size: 110%; }
|
||||
h4 { font-size: 105% }
|
||||
|
||||
div#content {
|
||||
font-size: 11pt;
|
||||
}
|
||||
a { text-decoration: none; }
|
||||
a:hover { text-decoration: underline; }
|
||||
|
||||
.header span {
|
||||
font-size: 14pt;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
div.actions ul {
|
||||
font-size: 10pt;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-weight: normal;
|
||||
font-size: 17pt;
|
||||
}
|
||||
h2 {
|
||||
font-weight: normal;
|
||||
font-size: 16pt;
|
||||
}
|
||||
h3 {
|
||||
font-weight: normal;
|
||||
font-size: 15pt;
|
||||
}
|
||||
h4 {
|
||||
font-weight: normal;
|
||||
font-size: 14pt;
|
||||
}
|
||||
h5 {
|
||||
font-weight: normal;
|
||||
font-size: 13pt;
|
||||
}
|
||||
h6 {
|
||||
font-weight: normal;
|
||||
font-size: 12pt;
|
||||
}
|
||||
|
||||
div.inlinepage > span.header > a {
|
||||
.flow {
|
||||
float: right;
|
||||
display: block;
|
||||
font-size: 11pt;
|
||||
font-weight: normal;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
margin-left: 10px;
|
||||
margin-bottom: 10px;
|
||||
text-align: center;
|
||||
}
|
||||
div.inlinepage > span.header > a:before {
|
||||
content: "permalink: ";
|
||||
font-size: smaller;
|
||||
text-decoration: none;
|
||||
|
||||
.attrib-caption {
|
||||
font-size: xx-small;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
div.inlinepage {
|
||||
input {
|
||||
border: solid 1px;
|
||||
border-color: #aaa;
|
||||
}
|
||||
|
||||
.header { font-weight: normal; }
|
||||
|
||||
.selflink { text-decoration: underline; }
|
||||
|
||||
.pageheader .actions ul,
|
||||
#sitemeta {
|
||||
border-top: solid 1px;
|
||||
border-bottom: solid 1px;
|
||||
font-size: small;
|
||||
border-color: #aaa;
|
||||
background: #eee;
|
||||
}
|
||||
.actions ul {
|
||||
padding: 1px;
|
||||
margin-top: 5px;
|
||||
}
|
||||
#sitemeta {
|
||||
padding: 0;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
#backlinks,
|
||||
.tags {
|
||||
margin-top: 0;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
#pageinfo {
|
||||
border: none;
|
||||
}
|
||||
|
||||
#searchform div:before {
|
||||
font-size: small;
|
||||
content: "search:";
|
||||
}
|
||||
#searchform input {
|
||||
border-top: none;
|
||||
border-bottom: none;
|
||||
vertical-align: bottom;
|
||||
margin-right: 7px;
|
||||
}
|
||||
|
||||
#sidebar {
|
||||
border: solid;
|
||||
border-width: 1px;
|
||||
padding: 0;
|
||||
margin-top: 15px;
|
||||
border: 1px solid;
|
||||
border-color: #aaa;
|
||||
background: #eee;
|
||||
width: 16ex;
|
||||
}
|
||||
#sidebar ul {
|
||||
margin: 0;
|
||||
padding-left: 1em;
|
||||
list-style-type: none;
|
||||
}
|
||||
#sidebar ul ul {
|
||||
padding-left: 1.5em;
|
||||
font-size: 90%;
|
||||
}
|
||||
|
||||
#pageinfo,
|
||||
#footer {
|
||||
margin: 0;
|
||||
}
|
||||
#pageinfo {
|
||||
font-size: small;
|
||||
}
|
||||
.pagecopyright,
|
||||
.pagelicense,
|
||||
.pagedate {
|
||||
margin: 0;
|
||||
display: inline;
|
||||
}
|
||||
#backlinks {
|
||||
margin-top: 5px;
|
||||
margin-bottom: 10px;
|
||||
font-size: larger;
|
||||
}
|
||||
|
||||
div.inlinepage h1 {
|
||||
font-weight: normal;
|
||||
font-size: 14pt;
|
||||
margin: 0;
|
||||
}
|
||||
div.inlinepage h2 {
|
||||
font-weight: normal;
|
||||
font-size: 13pt;
|
||||
margin: 0;
|
||||
}
|
||||
div.inlinepage h3 {
|
||||
font-weight: normal;
|
||||
font-size: 12pt;
|
||||
margin: 0;
|
||||
}
|
||||
div.inlinepage h4 {
|
||||
font-weight: normal;
|
||||
font-size: 11pt;
|
||||
margin: 0;
|
||||
}
|
||||
div.inlinepage h5 {
|
||||
font-weight: normal;
|
||||
font-size: 11pt;
|
||||
margin: 0;
|
||||
}
|
||||
div.inlinepage h6 {
|
||||
font-weight: normal;
|
||||
font-size: 11pt;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
div#blogform {
|
||||
padding: 0px 5px;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
pre {
|
||||
width: 90%;
|
||||
font-size: 10pt;
|
||||
font-family: monospace;
|
||||
background: #e1e1e1;
|
||||
margin-left: 4%;
|
||||
padding-top: 5px;
|
||||
padding-bottom: 5px;
|
||||
.validation {
|
||||
display: inline;
|
||||
float: right;
|
||||
}
|
||||
|
||||
.pagecloud {
|
||||
width: 25%;
|
||||
border-top: 1px solid #aaa;
|
||||
border-bottom: 1px solid #aaa;
|
||||
background: #eee;
|
||||
color: black !important;
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
.pagecloud a {
|
||||
text-decoration: none;
|
||||
table.identikit tr th {
|
||||
text-align: right;
|
||||
vertical-align: top;
|
||||
}
|
||||
table.identikit tr th:after {
|
||||
content: ":";
|
||||
}
|
||||
table.identikit tr td {
|
||||
text-align: left;
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
.doi_logo , .doi_logo a {
|
||||
background: #3965bd;
|
||||
color: white !important;
|
||||
font-size: 80%;
|
||||
text-decoration: none;
|
||||
font-family: times;
|
||||
font-weight: bold;
|
||||
padding: 0px 1px 0px 2px;
|
||||
}
|
||||
|
||||
#comments {
|
||||
margin-top: 5ex;
|
||||
border-top: solid 1px;
|
||||
border-color: #aaa;
|
||||
font-size: small;
|
||||
}
|
||||
|
||||
#comments #feedlink {
|
||||
text-align: right;
|
||||
}
|
||||
#comments #feedlink:before {
|
||||
content: "comment feeds: ";
|
||||
}
|
||||
|
||||
.addcomment {
|
||||
padding: 5px;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.comment {
|
||||
border: none;
|
||||
background-color: #eee;
|
||||
margin: 5px;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.comment-subject {
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
.comment-header {
|
||||
border-top: solid 1px;
|
||||
border-color: #aaa;
|
||||
text-align: right;
|
||||
font-style: normal;
|
||||
}
|
||||
|
|
|
@ -0,0 +1,35 @@
|
|||
I'm having some difficulties with ikiwiki's notion of time.
|
||||
|
||||
For (regular) pages, the *last edited* date is the one where the file
|
||||
was indeed last modified according to the file system information.
|
||||
The *created* date (commented out in the HTML) is, at least for
|
||||
`--getctime` operation, the date, where the file was last registered
|
||||
as changed with the VCS.
|
||||
|
||||
Now, at least with git, the thing is that when you're checking out files,
|
||||
they'll get the checkout-time's current time stamp.
|
||||
|
||||
What I strive for is the following: *created* be the date when the file
|
||||
(under its current name) was *first* registered with the VCS (which is
|
||||
more logical in my opinion), and *last edited* be the date the file was
|
||||
last registered as changed with the VCS, which is the current
|
||||
`--getctime` *created* date.
|
||||
|
||||
This means that I can build the HTML files from different checkouts of the
|
||||
VCS and they won't differ in the time stamps they contain in the HTML.
|
||||
|
||||
What is the rationale for ikiwiki's current behavior with respect to these
|
||||
time stamps?
|
||||
|
||||
--[[tschwinge]]
|
||||
|
||||
> Presumably it's the authors of the git and mercurial backends
|
||||
> not understanding the documentation for `rcs_getctime`,
|
||||
> which states:
|
||||
>
|
||||
>>This is used to get the page creation time for a file from the RCS, by
|
||||
>>looking it up in the history.
|
||||
>
|
||||
> I've fixed both broken implementations to correctly look
|
||||
> up the first, not the last, commit. Other VCS do not seem
|
||||
> to have the problem. --[[Joey]]
|
|
@ -0,0 +1,41 @@
|
|||
I keep some TODO lists on ikiwiki pages. I'm half-tempted to write a plugin
|
||||
to make ticking items off and adding items easier via the web interface. I'm
|
||||
aware though that this is not really what ikiwiki is designed for. Would
|
||||
anyone else find this useful? -- [[users/jon]]
|
||||
|
||||
----
|
||||
|
||||
My subsequent thoughts about how to approach this are two-fold.
|
||||
|
||||
Firstly, a filetype for todo lists, probably OPML, but I haven't looked to see
|
||||
if there is something more suitable. A plugin that converts this source into a
|
||||
traditional page output, i.e. a DOM tree of ul or ol and li elements.
|
||||
|
||||
Secondly, some magic javascript to make editing the list via the web page
|
||||
more interactive: add items, strike items out, reorder items etc., without
|
||||
round-tripping to the cgi for each operation.
|
||||
|
||||
Finally, a mechanism whereby the changes made to the page live can be
|
||||
committed back to the repository:
|
||||
|
||||
* ...perhaps the input → output conversion is reversible, and the HTML DOM
|
||||
representing the list can be transformed back into the source and submitted
|
||||
to the cgi like a regular edit: issues include the result of other
|
||||
postprocessing: templates, wikilinks, etc.
|
||||
* perhaps an embedded copy of the source is included in the output and the
|
||||
javascript operates on that in tandem with the static copy
|
||||
* perhaps the "output" is generated live by the JS at view time (with maybe
|
||||
a plugin-generated rendered output for non JS environments)
|
||||
|
||||
I envisage a button called "commit changes" appearing once some changes are
|
||||
made that submits the changes to the CGI, perhaps via a back channel. I'm not
|
||||
sure how to handle embeds or challenges from the CGI such as a login challenge
|
||||
(maybe the back channel would not be necessary in the first cut).
|
||||
|
||||
> You might look at the [[plugins/hnb]] plugin. HNB supports checklists.
|
||||
> There's not a fancy web interface, but the hnb command-line program can
|
||||
> be used to edit them. --[[Joey]]
|
||||
|
||||
>> thanks - I'll give it a look. I spent a few hours writing some javascript to manipulate a ul/li DOM tree in an outliner-fashion the other day. I might be able to join the puzzle pieces together sometime. [[Jon]]
|
||||
|
||||
a solution for this could be similar to a solution for [[todo/structured page data]], as todo lists are definitely a form of structured data. (in both cases, the page's current content is rendered into a html form, whose result is then saved as the page's new contents) --[[chrysn]]
|
|
@ -10,3 +10,8 @@ But in the page [OSS.html](http://atoz.org.cn/Whatis/OSS.html) , the auto genera
|
|||
to “Whatis” is /Whatis.html file , not to /Whatis/index.html. So the link to “Whatis” is fail .
|
||||
|
||||
Is it a bug , and how can I do for that ?
|
||||
|
||||
> I suggest that you name your page `Whatis.mdwn`, and not
|
||||
> `Whatis/index.mdwn`. That will make ikiwiki's links work,
|
||||
> and allows you to link to the `Whatis` page by that name.
|
||||
> --[[Joey]]
|
||||
|
|
|
@ -0,0 +1,3 @@
|
|||
And where is the code, please ?
|
||||
|
||||
> [[download]] --[[Joey]]
|
|
@ -87,7 +87,10 @@ Here are some less often needed parameters:
|
|||
inlining page.
|
||||
* `sort` - Controls how inlined pages are sorted. The default, "age" is to
|
||||
sort newest created pages first. Setting it to "title" will sort pages by
|
||||
title, and "mtime" sorts most recently modified pages first.
|
||||
title, and "mtime" sorts most recently modified pages first. If
|
||||
[[!cpan Sort::Naturally]] is installed, `sort` can be set to "title_natural"
|
||||
to sort by title with numbers treated as such ("1 2 9 10 20" instead of
|
||||
"1 10 2 20 9").
|
||||
* `reverse` - If set to "yes", causes the sort order to be reversed.
|
||||
* `feedshow` - Specify the maximum number of matching pages to include in
|
||||
the rss/atom feeds. The default is the same as the `show` value above.
|
||||
|
|
|
@ -9,7 +9,7 @@ Only links between mapped pages will be shown; links pointing to or from
|
|||
unmapped pages will be omitted. If the pages to include are not specified,
|
||||
the links between all pages (and other files) in the wiki are mapped. For
|
||||
best results, only a small set of pages should be mapped, since otherwise
|
||||
the map can become very large, unweildy, and complicated. Also, the map is
|
||||
the map can become very large, unwieldy, and complicated. Also, the map is
|
||||
rebuilt whenever one of the mapped pages is changed, which can make the
|
||||
wiki a bit slow.
|
||||
|
||||
|
|
|
@ -44,6 +44,7 @@ Projects & Organizations
|
|||
* [St Hugh of Lincoln Primary School in Surrey](http://hugh.vm.bytemark.co.uk/)
|
||||
* [Pigro Network](http://www.pigro.net) is running a hg based ikiwiki. (And provides ikiwiki hosting for $10/m.)
|
||||
* [Cosin Homepage](http://cosin.ch) uses an Ikiwiki with a subversion repository.
|
||||
* [Bosco Free Orienteering Software](http://bosco.durcheinandertal.ch)
|
||||
|
||||
Personal sites and blogs
|
||||
========================
|
||||
|
@ -116,6 +117,8 @@ Personal sites and blogs
|
|||
* [muammar's site](http://muammar.me)
|
||||
* [Per Bothner's blog](http://per.bothner.com/blog/)
|
||||
* [Bernd Zeimetz (bzed)](http://bzed.de/)
|
||||
* [Gaudenz Steinlin](http://gaudenz.durcheinandertal.ch)
|
||||
* [Simon Kjika'qawej C.](http://simonraven.kisikew.org/ikiwiki/) Please note it might change location at any time (likely wiki.k.o or under /wiki/ at simonraven.k.o).
|
||||
|
||||
|
||||
Please feel free to add your own ikiwiki site!
|
||||
|
|
|
@ -0,0 +1,12 @@
|
|||
# OpenID discussion
|
||||
|
||||
## No return_to in OpenID server
|
||||
|
||||
Hi, there's no return_to from a designated OpenID server page, specs requires (I think a "should" or "must", can't recall exact wording) that it redirects back to the RP, in order to complete the registration and authentication. Unless I'm missing something, and the doc is incomplete, I'd consider this a bug. I don't expect to be of much use WRT coming up with a patch, but I'm willing to test ;-) .
|
||||
|
||||
> If this is a bug, could you please explain:
|
||||
>
|
||||
> * What happens when the bug occurs?
|
||||
> * How can one reproduce the bug?
|
||||
>
|
||||
> PS, please file bugs under [[bugs]] in future. --[[Joey]]
|
|
@ -10,4 +10,4 @@ log back in, try out the OpenID signup process if you don't already have an
|
|||
OpenID, and see how OpenID works for you. And let me know your feelings about
|
||||
making such a switch. --[[Joey]]
|
||||
|
||||
[[!poll 60 "Accept only OpenID for logins" 18 "Accept only password logins" 35 "Accept both"]]
|
||||
[[!poll 61 "Accept only OpenID for logins" 18 "Accept only password logins" 36 "Accept both"]]
|
||||
|
|
|
@ -1,10 +0,0 @@
|
|||
ikiwiki 3.07 released with [[!toggle text="these changes"]]
|
||||
[[!toggleable text="""
|
||||
* Updated German translation (Kai Wasserbäch). Closes: #[518377](http://bugs.debian.org/518377)
|
||||
* Updated French translation (Jean-Luc Coulon). Closes: #[518510](http://bugs.debian.org/518510)
|
||||
* wmd: New plugin contributed by William Uther to support the WMD
|
||||
Wysiwym markdown editor.
|
||||
* smiley: Avoid infinite loop in smiley expansion triggered
|
||||
by the template scan mode change in version 3.05. Closes: #[518805](http://bugs.debian.org/518805)
|
||||
* template: When loading a template in scan mode, let preprocess
|
||||
know it only needs to scan."""]]
|
|
@ -0,0 +1,6 @@
|
|||
ikiwiki 3.08 released with [[!toggle text="these changes"]]
|
||||
[[!toggleable text="""
|
||||
* git: Fix utf-8 encoding of author names.
|
||||
* git: Manually decode git output from utf-8, avoids
|
||||
warning messages on invalidly encoded output.
|
||||
* Fix bug that caused weird things to appear as page types."""]]
|
|
@ -65,3 +65,15 @@ actually be the way to go. IMHO, the Perl sections idea is the
|
|||
easiest to setup, but on the long run, I'd prefer ikiwiki to optionnally
|
||||
use a userdb storage backend supported at least by Apache and lighttpd.
|
||||
--[[intrigeri]]
|
||||
|
||||
Tons of CPAN modules may help, but most of them are specific to `mod_perl`,
|
||||
and AFAIK, ikiwiki is generally not run with `mod_perl`. It's not clear to me
|
||||
wether these modules depend on the webapp to be run with `mod_perl` set
|
||||
as the script handler, or only on `mod_perl` to be installed and loaded.
|
||||
|
||||
* CPAN's `Apache::AuthenHook` allows to plug arbitrary Perl handlers as
|
||||
Apache authentication providers.
|
||||
* CPAN's `Apache::Authen::Program` (`mod_perl`)
|
||||
* [http://www.openfusion.com.au/labs/mod_auth_tkt/](mod_auth_tkt) along with CPAN's
|
||||
`Apache::AuthTkt`
|
||||
--[[intrigeri]]
|
||||
|
|
|
@ -90,3 +90,10 @@ But, of course, rsync is better.
|
|||
----
|
||||
|
||||
Let's see what happens... ~~
|
||||
|
||||
測試的啦
|
||||
|
||||
----
|
||||
|
||||
|
||||
testing
|
||||
|
|
|
@ -44,6 +44,9 @@ div.inlinecontent {
|
|||
.pagefooter {
|
||||
clear: both;
|
||||
}
|
||||
.inlinefooter {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
.tags {
|
||||
}
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
Could you please add numerical ordering by title to [[inline|plugins/inline]]
|
||||
plugin? Now I can do only alphabetical order by title, but sometime it's not enough.
|
||||
|
||||
> Implemented, see [[natural_sorting]] [[!tag done]] --[[Joey]]
|
||||
|
||||
BTW, it seems that ordering by title is rather ordering by filename of page.
|
||||
For me "title" means title of page I can set using `title` parameter
|
||||
of [[meta|plugins/meta]] plugin :)
|
||||
|
|
|
@ -0,0 +1,51 @@
|
|||
[[!tag wishlist]]
|
||||
[[!tag patch]]
|
||||
|
||||
for inlines of pages which follow a certain scheme, it might not be required to
|
||||
set the title for each individual post, but to automatically set the title.
|
||||
this can either be based on timestamp formatting, or use the already existing
|
||||
munging mechanism, which appends numbers to page titles in case that page
|
||||
already exists.
|
||||
|
||||
two patches ([1], [2]) set inline up for that, adding an additional `autotitle`
|
||||
parameter. if that is given, the regular input of the inline postform will be
|
||||
replaced with a hidden input of that text. in addition, the empty title is
|
||||
permitted (both for autotitle and regular titles, as they go in the same GET
|
||||
parameter, `title`). as the empty page title is illegal, munging is used,
|
||||
resulting in ascending numeric page titles to be created.
|
||||
|
||||
the second patch is actually a one-liner, filtering the title through strftime.
|
||||
|
||||
### potential user interaction issues
|
||||
|
||||
this has two side effects which have to be considered: first, the empty page
|
||||
title is accepted also in normal postforms (previously, this resulted in a "bad
|
||||
page name" error); second, entering a percent sign in that field might result
|
||||
in unexpexted strftime substitution (strftime might not even substitute for
|
||||
common uses of percent as in "reach 10% market share", but might in others as
|
||||
in "the 10%-rule").
|
||||
|
||||
both can be circumvented by using another GET parameter for autotexts, as
|
||||
implemented in [3].
|
||||
> this patch still does not work perfectly; especially, it should make a
|
||||
> distinction between "autotitle is set but equal ''" (in which case it
|
||||
> should create a page named `1.mdwn`, and "autotitle is not set, and title is
|
||||
> equal ''" (in which case it should display the old error message) --[[chrysn]]
|
||||
|
||||
### potential security issues
|
||||
|
||||
* the autotitle's value is directly output through the template (but that's
|
||||
done in other places as well, so i assume it's safe)
|
||||
* i don't know if anything bad can happen if unfiltered content is passed to
|
||||
POSIX::strftime.
|
||||
|
||||
### further extension
|
||||
|
||||
having a pre-filled input field instead of an unchangable hidden input might be
|
||||
cool (eg for creating an entry with yesterday's date), but would be a bit of a
|
||||
problem with static pages. javascript could help with the date part, but name
|
||||
munging would be yet another thing.
|
||||
|
||||
[1]: http://github.com/github076986099/ikiwiki/commit/b568eb257a3ef5ff49a84ac00a3a7465b643c1e1
|
||||
[2]: http://github.com/github076986099/ikiwiki/commit/34bc82f232be141edf036d35e8ef5aa289415072
|
||||
[3]: http://github.com/github076986099/ikiwiki/commit/40dc10a4ec7809e401b4497c2abccfba30f7a2af
|
|
@ -87,3 +87,219 @@ remains. Some CSS to clean up the display of the live WMD preview would be good
|
|||
> I assume that is designed for websites that do not use markdown
|
||||
> internally. Doesn't it have a setting to leave it as markdown?
|
||||
>> Found setting, fixed. --[[Joey]]
|
||||
|
||||
>>> As I noted above, I've been working on the non-markdown page issue.
|
||||
>>> Below is my a new javascript file that I'm using, and below that a patch
|
||||
>>> to enable it. This patch makes the normal usage prettier - you get
|
||||
>>> a side panel with the live preview in it. It also adds a new config
|
||||
>>> option, `wmd_use101api`, which turns on code that tries to use the
|
||||
>>> wmd api. At the moment this code doesn't seem to work - moreover the
|
||||
>>> code that uses the new API dies early, so any code after that point is
|
||||
>>> completely untested. I will not
|
||||
>>> get a chance to look at this again soon though, so I thought I'd post
|
||||
>>> my progress so far. -- [[Will]]
|
||||
|
||||
|
||||
Place the following file in `underlays/wmd/wmd-ikiwiki.js`.
|
||||
|
||||
----
|
||||
|
||||
// This is some code to interface the WMD interface 1.0.1 with IkiWiki
|
||||
// The WMD interface is planned to change, so this file will likely need
|
||||
// updating in future.
|
||||
|
||||
if (useWMDinterface) {
|
||||
wmd_options = { autostart: false, output: "Markdown" };
|
||||
var instance = null;
|
||||
|
||||
hook("onload", initwmd);
|
||||
} else {
|
||||
var typeSelector = document.getElementById("type");
|
||||
|
||||
var currentType = getType(typeSelector);
|
||||
|
||||
if (currentType == "mdwn") {
|
||||
wmd_options = { output: "Markdown" };
|
||||
document.getElementById("wmd-preview-container").style.display = 'none';
|
||||
} else {
|
||||
wmd_options = { autostart: false };
|
||||
document.getElementById("wmd-preview-container").style.display = 'block';
|
||||
}
|
||||
}
|
||||
|
||||
function initwmd() {
|
||||
if (!Attacklab || !Attacklab.wmd) {
|
||||
alert("WMD hasn't finished loading!");
|
||||
return;
|
||||
}
|
||||
|
||||
var typeSelector = document.getElementById("type");
|
||||
|
||||
var currentType = getType(typeSelector);
|
||||
|
||||
if (currentType == "mdwn") {
|
||||
window.setTimeout(enableWMD,10);
|
||||
}
|
||||
|
||||
typeSelector.onchange=function() {
|
||||
var docType=getType(this);
|
||||
|
||||
if (docType=="mdwn") {
|
||||
enableWMD();
|
||||
} else {
|
||||
disableWMD();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function getType(typeSelector)
|
||||
{
|
||||
if (typeSelector.nodeName.toLowerCase() == 'input') {
|
||||
return typeSelector.getAttribute('value');
|
||||
} else if (typeSelector.nodeName.toLowerCase() == 'select') {
|
||||
return typeSelector.value;
|
||||
// return typeSelector.options[typeSelector.selectedIndex].innerText;
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
function enableWMD()
|
||||
{
|
||||
var editContent = document.getElementById("editcontent");
|
||||
var previewDiv = document.getElementById("wmd-preview");
|
||||
var previewDivContainer = document.getElementById("wmd-preview-container");
|
||||
|
||||
previewDivContainer.style.display = 'block';
|
||||
// editContent.style.width = previewDivContainer.style.width;
|
||||
|
||||
/***** build the preview manager *****/
|
||||
var panes = {input:editContent, preview:previewDiv, output:null};
|
||||
var previewManager = new Attacklab.wmd.previewManager(panes);
|
||||
|
||||
/***** build the editor and tell it to refresh the preview after commands *****/
|
||||
var editor = new Attacklab.wmd.editor(editContent,previewManager.refresh);
|
||||
|
||||
// save everything so we can destroy it all later
|
||||
instance = {ta:editContent, div:previewDiv, ed:editor, pm:previewManager};
|
||||
}
|
||||
|
||||
function disableWMD()
|
||||
{
|
||||
document.getElementById("wmd-preview-container").style.display = 'none';
|
||||
|
||||
if (instance != null) {
|
||||
instance.pm.destroy();
|
||||
instance.ed.destroy();
|
||||
// inst.ta.style.width='100%'
|
||||
}
|
||||
instance = null;
|
||||
}
|
||||
|
||||
|
||||
----
|
||||
|
||||
diff --git a/IkiWiki/Plugin/wmd.pm b/IkiWiki/Plugin/wmd.pm
|
||||
index 9ddd237..743a0b8 100644
|
||||
--- a/IkiWiki/Plugin/wmd.pm
|
||||
+++ b/IkiWiki/Plugin/wmd.pm
|
||||
@@ -17,6 +17,13 @@ sub getsetup () {
|
||||
return
|
||||
plugin => {
|
||||
safe => 1,
|
||||
+ rebuild => 1,
|
||||
+ },
|
||||
+ wmd_use101api => {
|
||||
+ type => "boolean",
|
||||
+ description => "Use the advanced, but unstable, WMD api for markdown preview.",
|
||||
+ safe => 0,
|
||||
+ rebuild => 0,
|
||||
},
|
||||
}
|
||||
|
||||
@@ -24,29 +31,25 @@ sub formbuilder_setup (@) {
|
||||
my %params=@_;
|
||||
my $form=$params{form};
|
||||
|
||||
- return if ! defined $form->field("do");
|
||||
+ return unless defined $form->field("do");
|
||||
|
||||
return unless $form->field("do") eq "edit" ||
|
||||
- $form->field("do") eq "create" ||
|
||||
- $form->field("do") eq "comment";
|
||||
-
|
||||
- $form->tmpl_param("wmd_preview", "<div class=\"wmd-preview\"></div>\n".
|
||||
- include_javascript(undef, 1));
|
||||
-}
|
||||
-
|
||||
-sub include_javascript ($;$) {
|
||||
- my $page=shift;
|
||||
- my $absolute=shift;
|
||||
-
|
||||
- my $wmdjs=urlto("wmd/wmd.js", $page, $absolute);
|
||||
- return <<"EOF"
|
||||
-<script type="text/javascript">
|
||||
-wmd_options = {
|
||||
- output: "Markdown"
|
||||
-};
|
||||
-</script>
|
||||
-<script src="$wmdjs" type="text/javascript"></script>
|
||||
-EOF
|
||||
+ $form->field("do") eq "create" ||
|
||||
+ $form->field("do") eq "comment";
|
||||
+
|
||||
+ my $useAPI = $config{wmd_use101api}?'true':'false';
|
||||
+ my $ikiwikijs = urlto("ikiwiki.js", undef, 1);
|
||||
+ my $wmdIkiwikijs = urlto("wmd-ikiwiki.js", undef, 1);
|
||||
+ my $wmdjs = urlto("wmd.js", undef, 1);
|
||||
+
|
||||
+ my $previewScripts = <<"EOS";
|
||||
+ <script type="text/javascript">useWMDinterface=$useAPI;</script>
|
||||
+ <script src="$ikiwikijs" type="text/javascript"></script>
|
||||
+ <script src="$wmdIkiwikijs" type="text/javascript"></script>
|
||||
+ <script src="$wmdjs" type="text/javascript"></script>
|
||||
+EOS
|
||||
+
|
||||
+ $form->tmpl_param("wmd_preview", $previewScripts);
|
||||
}
|
||||
|
||||
1
|
||||
diff --git a/doc/style.css b/doc/style.css
|
||||
index a6e6734..36c2b13
|
||||
--- a/doc/style.css
|
||||
+++ b/doc/style.css
|
||||
@@ -76,9 +76,16 @@ div.tags {
|
||||
float: right;
|
||||
}
|
||||
|
||||
+/*
|
||||
#editcontent {
|
||||
width: 100%;
|
||||
}
|
||||
+*/
|
||||
+
|
||||
+#wmd-preview-container {
|
||||
+ width: 49%;
|
||||
+ float: right;
|
||||
+}
|
||||
|
||||
img {
|
||||
border-style: none;
|
||||
diff --git a/templates/editpage.tmpl b/templates/editpage.tmpl
|
||||
index b1cf015..1d2f080 100644
|
||||
--- a/templates/editpage.tmpl
|
||||
+++ b/templates/editpage.tmpl
|
||||
@@ -15,6 +15,14 @@ Page type: <TMPL_VAR FIELD-TYPE>
|
||||
<TMPL_VAR FIELD-PAGE>
|
||||
<TMPL_VAR FIELD-TYPE>
|
||||
</TMPL_IF>
|
||||
+<TMPL_IF NAME="WMD_PREVIEW">
|
||||
+<div id="wmd-preview-container">
|
||||
+<div class="header">
|
||||
+<span>Live preview:</span>
|
||||
+</div>
|
||||
+<div class="wmd-preview" id="wmd-preview"></div>
|
||||
+</div>
|
||||
+</TMPL_IF>
|
||||
<TMPL_VAR FIELD-EDITCONTENT><br />
|
||||
<TMPL_IF NAME="CAN_COMMIT">
|
||||
Optional comment about this change:<br />
|
||||
|
|
|
@ -0,0 +1,21 @@
|
|||
[[!tag wishlist]]
|
||||
[[!tag patch]]
|
||||
|
||||
the inline plugin's sorting is plain lexical, thich may not be appropriate for
|
||||
page titles if they have numeric components. the
|
||||
[Sort::Naturally](http://search.cpan.org/dist/Sort-Naturally/) perl module
|
||||
provides an algorithm for that.
|
||||
|
||||
there is a
|
||||
[patch](http://git.ikiwiki.info/?p=ikiwiki;a=commit;h=55b83cb7bd1cd7c60bb45dc22c3745dd80a63fed)
|
||||
attached that makes the [[plugins/inline]] plugin use Sort::Naturally if sort
|
||||
is set to "title_natural".
|
||||
|
||||
the current patch uses `require Sort::Naturally`, so
|
||||
[libsort-naturally-perl](http://packages.debian.org/libsort-naturally-perl)
|
||||
does not become a dependency; it might be worth suggesting, though.
|
||||
|
||||
> See also: [[inline:_numerical_ordering_by_title]] (I probably prefer your
|
||||
> approach..) --[[Joey]]
|
||||
|
||||
> [[applied|done]]
|
|
@ -106,11 +106,11 @@ These options configure the wiki. Note that [[plugins]] can add additional
|
|||
configuration options of their own. All of these options and more besides can
|
||||
also be configured using a setup file.
|
||||
|
||||
* --wikiname
|
||||
* --wikiname name
|
||||
|
||||
The name of the wiki, default is "wiki".
|
||||
|
||||
* --templatedir
|
||||
* --templatedir dir
|
||||
|
||||
Specify the directory that the page [[templates|wikitemplates]] are stored in.
|
||||
Default is `/usr/share/ikiwiki/templates`, or another location as configured at
|
||||
|
@ -122,7 +122,7 @@ also be configured using a setup file.
|
|||
ikiwiki. Old versions of templates do not always work with new ikiwiki
|
||||
versions.
|
||||
|
||||
* --underlaydir
|
||||
* --underlaydir dir
|
||||
|
||||
Specify the directory that is used to underlay the source directory.
|
||||
Source files will be taken from here unless overridden by a file in the
|
||||
|
|
|
@ -0,0 +1,3 @@
|
|||
New ikiwiki site at my personal site under /ikiwiki/ . This might move to /wiki/ or be on wiki.k.o depending on if I can import my MediaWiki stuff to it.
|
||||
|
||||
Thought I'd try it out again and it grew on me.
|
6
po/fr.po
6
po/fr.po
|
@ -9,8 +9,8 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: ikiwiki 3.04\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2009-03-08 19:02-0400\n"
|
||||
"PO-Revision-Date: 2009-02-26 21:28+0100\n"
|
||||
"POT-Creation-Date: 2009-03-01 15:03-0500\n"
|
||||
"PO-Revision-Date: 2009-03-15 16:10+0100\n"
|
||||
"Last-Translator: Philippe Batailler <philippe.batailler@free.fr>\n"
|
||||
"Language-Team: French <debian-l10n-french@lists.debian.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -26,6 +26,8 @@ msgid ""
|
|||
"probable misconfiguration: sslcookie is set, but you are attepting to login "
|
||||
"via http, not https"
|
||||
msgstr ""
|
||||
"Erreur de configuration probable : sslcookie est positionné mais vous tentez "
|
||||
"de vous connecter avec http et non https"
|
||||
|
||||
#: ../IkiWiki/CGI.pm:149
|
||||
msgid "login failed, perhaps you need to turn on cookies?"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2009-03-08 19:02-0400\n"
|
||||
"POT-Creation-Date: 2009-03-15 17:56-0400\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -54,7 +54,7 @@ msgstr ""
|
|||
msgid "You are banned."
|
||||
msgstr ""
|
||||
|
||||
#: ../IkiWiki/CGI.pm:390 ../IkiWiki/CGI.pm:391 ../IkiWiki.pm:1209
|
||||
#: ../IkiWiki/CGI.pm:390 ../IkiWiki/CGI.pm:391 ../IkiWiki.pm:1211
|
||||
msgid "Error"
|
||||
msgstr ""
|
||||
|
||||
|
@ -327,18 +327,18 @@ msgstr ""
|
|||
msgid "fortune failed"
|
||||
msgstr ""
|
||||
|
||||
#: ../IkiWiki/Plugin/git.pm:624 ../IkiWiki/Plugin/git.pm:642
|
||||
#: ../IkiWiki/Plugin/git.pm:626 ../IkiWiki/Plugin/git.pm:644
|
||||
#: ../IkiWiki/Receive.pm:129
|
||||
#, perl-format
|
||||
msgid "you are not allowed to change %s"
|
||||
msgstr ""
|
||||
|
||||
#: ../IkiWiki/Plugin/git.pm:664
|
||||
#: ../IkiWiki/Plugin/git.pm:666
|
||||
#, perl-format
|
||||
msgid "you cannot act on a file with mode %s"
|
||||
msgstr ""
|
||||
|
||||
#: ../IkiWiki/Plugin/git.pm:668
|
||||
#: ../IkiWiki/Plugin/git.pm:670
|
||||
msgid "you are not allowed to change file modes"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1018,12 +1018,12 @@ msgstr ""
|
|||
msgid "failed to load external plugin needed for %s plugin: %s"
|
||||
msgstr ""
|
||||
|
||||
#: ../IkiWiki.pm:1192
|
||||
#: ../IkiWiki.pm:1194
|
||||
#, perl-format
|
||||
msgid "preprocessing loop detected on %s at depth %i"
|
||||
msgstr ""
|
||||
|
||||
#: ../IkiWiki.pm:1730
|
||||
#: ../IkiWiki.pm:1732
|
||||
msgid "yes"
|
||||
msgstr ""
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<div class="comment" id="<TMPL_VAR NAME=INLINEPAGE>">
|
||||
<div class="comment" id="<TMPL_VAR NAME=COMMENTID>">
|
||||
|
||||
<div class="comment-subject">
|
||||
<TMPL_IF PERMALINK>
|
||||
|
|
Loading…
Reference in New Issue