Merge branch 'master' into fancypodcast
commit
844710c0da
|
@ -53,6 +53,7 @@ sub checkconfig () {
|
|||
eval q{
|
||||
use RPC::XML;
|
||||
use RPC::XML::Client;
|
||||
$RPC::XML::ENCODING = 'utf-8';
|
||||
};
|
||||
error $@ if $@;
|
||||
}
|
||||
|
|
|
@ -195,7 +195,7 @@ sub rcs_add ($) {
|
|||
sub rcs_remove ($) {
|
||||
my ($file) = @_;
|
||||
|
||||
my @cmdline = ("bzr", "rm", "--force", "--quiet", "$config{srcdir}/$file");
|
||||
my @cmdline = ("bzr", "rm", "--quiet", "$config{srcdir}/$file");
|
||||
if (system(@cmdline) != 0) {
|
||||
warn "'@cmdline' failed: $!";
|
||||
}
|
||||
|
|
|
@ -86,8 +86,10 @@ sub format_month (@) {
|
|||
my $year = $date[5] + 1900;
|
||||
my $mtag = sprintf("%02d", $month);
|
||||
|
||||
# Only one posting per day is being linked to.
|
||||
$linkcache{"$year/$mtag/$mday"} = $p;
|
||||
if (! $linkcache{"$year/$mtag/$mday"}) {
|
||||
$linkcache{"$year/$mtag/$mday"} = [];
|
||||
}
|
||||
push(@{$linkcache{"$year/$mtag/$mday"}}, $p);
|
||||
}
|
||||
|
||||
my $pmonth = $params{month} - 1;
|
||||
|
@ -221,11 +223,38 @@ EOF
|
|||
$tag='month-calendar-day-link';
|
||||
}
|
||||
$calendar.=qq{\t\t<td class="$tag $downame{$wday}">};
|
||||
$calendar.=htmllink($params{page}, $params{destpage},
|
||||
$linkcache{$key},
|
||||
noimageinline => 1,
|
||||
linktext => $day,
|
||||
title => pagetitle(IkiWiki::basename($linkcache{$key})));
|
||||
if (scalar(@{$linkcache{$key}}) == 1) {
|
||||
# Only one posting on this page
|
||||
my $page = $linkcache{$key}[0];
|
||||
$calendar.=htmllink($params{page}, $params{destpage},
|
||||
$page,
|
||||
noimageinline => 1,
|
||||
linktext => $day,
|
||||
title => pagetitle(IkiWiki::basename($page)));
|
||||
}
|
||||
else {
|
||||
$calendar.=qq{<div class='popup'>$day<div class='balloon'>};
|
||||
# Several postings on this page
|
||||
$calendar.=qq{<ul>};
|
||||
foreach my $page (@{$linkcache{$key}}) {
|
||||
$calendar.= qq{\n\t\t\t<li>};
|
||||
my $title;
|
||||
if (exists $pagestate{$page}{meta}{title}) {
|
||||
$title = "$pagestate{$page}{meta}{title}";
|
||||
}
|
||||
else {
|
||||
$title = pagetitle(IkiWiki::basename($page));
|
||||
}
|
||||
$calendar.=htmllink($params{page}, $params{destpage},
|
||||
$page,
|
||||
noimageinline => 1,
|
||||
linktext => $title,
|
||||
title => $title);
|
||||
$calendar.= '</li>';
|
||||
}
|
||||
$calendar.=qq{\n\t\t</ul>};
|
||||
$calendar.=qq{</div></div>};
|
||||
}
|
||||
$calendar.=qq{</td>\n};
|
||||
}
|
||||
else {
|
||||
|
|
|
@ -90,6 +90,15 @@ sub getsetup () {
|
|||
safe => 0,
|
||||
rebuild => 0,
|
||||
},
|
||||
comments_allowformats => {
|
||||
type => 'string',
|
||||
default => '',
|
||||
example => 'mdwn txt',
|
||||
description => 'Restrict formats for comments to (no restriction if empty)',
|
||||
safe => 1,
|
||||
rebuild => 0,
|
||||
},
|
||||
|
||||
}
|
||||
|
||||
sub checkconfig () {
|
||||
|
@ -101,6 +110,8 @@ sub checkconfig () {
|
|||
unless defined $config{comments_closed_pagespec};
|
||||
$config{comments_pagename} = 'comment_'
|
||||
unless defined $config{comments_pagename};
|
||||
$config{comments_allowformats} = ''
|
||||
unless defined $config{comments_allowformats};
|
||||
}
|
||||
|
||||
sub htmlize {
|
||||
|
@ -128,12 +139,18 @@ sub safeurl ($) {
|
|||
}
|
||||
}
|
||||
|
||||
sub isallowed ($) {
|
||||
my $format = shift;
|
||||
return ! $config{comments_allowformats} || $config{comments_allowformats} =~ /\b$format\b/;
|
||||
}
|
||||
|
||||
sub preprocess {
|
||||
my %params = @_;
|
||||
my $page = $params{page};
|
||||
|
||||
my $format = $params{format};
|
||||
if (defined $format && ! exists $IkiWiki::hooks{htmlize}{$format}) {
|
||||
if (defined $format && (! exists $IkiWiki::hooks{htmlize}{$format} ||
|
||||
! isallowed($format))) {
|
||||
error(sprintf(gettext("unsupported page format %s"), $format));
|
||||
}
|
||||
|
||||
|
@ -332,7 +349,7 @@ sub editcomment ($$) {
|
|||
|
||||
my @page_types;
|
||||
if (exists $IkiWiki::hooks{htmlize}) {
|
||||
foreach my $key (grep { !/^_/ } keys %{$IkiWiki::hooks{htmlize}}) {
|
||||
foreach my $key (grep { !/^_/ && isallowed($_) } keys %{$IkiWiki::hooks{htmlize}}) {
|
||||
push @page_types, [$key, $IkiWiki::hooks{htmlize}{$key}{longname} || $key];
|
||||
}
|
||||
}
|
||||
|
|
|
@ -78,6 +78,7 @@ sub anonsubscribe ($$) {
|
|||
sub notify (@) {
|
||||
my @files=@_;
|
||||
return unless @files;
|
||||
return if $config{rebuild};
|
||||
|
||||
eval q{use Mail::Sendmail};
|
||||
error $@ if $@;
|
||||
|
|
|
@ -192,6 +192,7 @@ sub process_waypoint {
|
|||
}
|
||||
}
|
||||
$icon = urlto($icon, $dest, 1);
|
||||
$icon =~ s!/*$!!; # hack - urlto shouldn't be appending a slash in the first place
|
||||
$tag = '' unless $tag;
|
||||
register_rendered_files($map, $page, $dest);
|
||||
$pagestate{$page}{'osm'}{$map}{'waypoints'}{$name} = {
|
||||
|
|
|
@ -9,6 +9,7 @@ sub import {
|
|||
hook(type => "getsetup", id => "theme", call => \&getsetup);
|
||||
hook(type => "checkconfig", id => "theme", call => \&checkconfig);
|
||||
hook(type => "needsbuild", id => "theme", call => \&needsbuild);
|
||||
hook(type => "pagetemplate", id => "theme", call => \&pagetemplate);
|
||||
}
|
||||
|
||||
sub getsetup () {
|
||||
|
@ -63,4 +64,12 @@ sub needsbuild ($) {
|
|||
return $needsbuild;
|
||||
}
|
||||
|
||||
sub pagetemplate (@) {
|
||||
my %params=@_;
|
||||
my $template=$params{template};
|
||||
if (exists $config{theme} && length $config{theme}) {
|
||||
$template->param("theme_$config{theme}" => 1);
|
||||
}
|
||||
}
|
||||
|
||||
1
|
||||
|
|
|
@ -1,9 +1,30 @@
|
|||
ikiwiki (3.20130505) UNRELEASED; urgency=low
|
||||
ikiwiki (3.20130519) UNRELEASED; urgency=low
|
||||
|
||||
* blogspam: Fix encoding issue in RPC::XML call.
|
||||
Thanks, Changaco
|
||||
* comments: The formats allowed to be used in comments can be configured
|
||||
using comments_allowformats.
|
||||
Thanks, Michal Sojka
|
||||
* calendar: When there are multiple pages for a given day, they're
|
||||
displayed in a popup on mouseover.
|
||||
Thanks, Louis
|
||||
* osm: Remove trailing slash from KML maps icon.
|
||||
* page.tmpl: omit searchform, trails, sidebar and most metadata in CGI
|
||||
(smcv)
|
||||
|
||||
-- Joey Hess <joeyh@debian.org> Sun, 23 Jun 2013 14:02:01 -0400
|
||||
|
||||
ikiwiki (3.20130518) unstable; urgency=low
|
||||
|
||||
* Fix test suite to not fail when XML::Twig is not installed.
|
||||
Closes: #707436
|
||||
* theme: Now <TMPL_IF THEME_$NAME> can be used in all templates when
|
||||
a theme is enabled.
|
||||
* notifyemail: Fix bug that caused duplicate emails to be sent when
|
||||
site was rebuilt.
|
||||
* bzr: bzr rm no longer has a --force option, remove
|
||||
|
||||
-- Joey Hess <joeyh@debian.org> Thu, 09 May 2013 10:47:18 -0400
|
||||
-- Joey Hess <joeyh@debian.org> Sat, 18 May 2013 16:28:21 -0400
|
||||
|
||||
ikiwiki (3.20130504) unstable; urgency=low
|
||||
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
I just got this message trying to post to this wiki:
|
||||
|
||||
Error: Sorry, but that looks like spam to blogspam: No reverse DNS entry for 2001:1928:1:9::1
|
||||
|
||||
So yeah, it seems I have no reverse DNS for my IPv6 address, which may
|
||||
be quite common for emerging IPv6 deployments...
|
||||
|
||||
This may be related to [[blogspam_options whitelist vs. IPv6?]].
|
|
@ -0,0 +1,34 @@
|
|||
[[!tag patch]]
|
||||
|
||||
<pre>
|
||||
From 5ad35b2805ca50478f07d810e57e7c9b8f4eddea Mon Sep 17 00:00:00 2001
|
||||
From: Changaco <changaco@changaco.net>
|
||||
Date: Tue, 4 Jun 2013 02:54:35 +0200
|
||||
Subject: [PATCH] fix encoding issue in blogspam plugin
|
||||
|
||||
RPC::XML uses ascii as default encoding, we have to tell it to use utf8.
|
||||
|
||||
Without this, ikiwiki returns "failed to get response from blogspam server"
|
||||
every time a non-ascii character is used in a content that needs checking.
|
||||
|
||||
---
|
||||
IkiWiki/Plugin/blogspam.pm | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/IkiWiki/Plugin/blogspam.pm b/IkiWiki/Plugin/blogspam.pm
|
||||
index d32c2f1..e48ed72 100644
|
||||
--- a/IkiWiki/Plugin/blogspam.pm
|
||||
+++ b/IkiWiki/Plugin/blogspam.pm
|
||||
@@ -53,6 +53,7 @@ sub checkconfig () {
|
||||
eval q{
|
||||
use RPC::XML;
|
||||
use RPC::XML::Client;
|
||||
+ $RPC::XML::ENCODING = 'utf-8';
|
||||
};
|
||||
error $@ if $@;
|
||||
}
|
||||
--
|
||||
1.8.3
|
||||
</pre>
|
||||
|
||||
[[done]] --[[Joey]]
|
|
@ -0,0 +1,32 @@
|
|||
I added a feedpages directive to `blog/index.mdwn` to not pick up anything tagged `tags/random/hidden` yet that still happenend.
|
||||
|
||||
~git/richardhartmann.de/blog % grep hidden index.mdwn
|
||||
\[[!inline pages="./posts/*/*/* and !*/Discussion" feedpages="./posts/*/*/* and !*/Discussion and not tagged(tags/random/hidden)" show="10" actions=yes rootpage="blog"]]
|
||||
~git/richardhartmann.de/blog % grep hidden posts/2013/05/17-Debian_Release_Critical_Bug_report_for_Week_20.mdwn
|
||||
\[[!tag tags/tech/floss/debian tags/tech/floss/debian/rc-stats/8.0-jessie tags/random/hidden]]
|
||||
~git/richardhartmann.de/blog %
|
||||
|
||||
If you need more information, please let me know.
|
||||
|
||||
Richard
|
||||
|
||||
> I don't think this is a bug. You have a syntax error in your pagespec:
|
||||
> "not" is not a recognised keyword in [[pagespecs|ikiwiki/pagespec]],
|
||||
> so `and not tagged(...)` should be `and !tagged(...)`. Presumably inline
|
||||
> falls back to `pages` when `feedpages` doesn't work.
|
||||
>
|
||||
> By posting the pagespec here with insufficient escaping (which I've fixed)
|
||||
> you caused *this* ikiwiki instance's HTML to contain an error message
|
||||
> illustrating that syntax error :-)
|
||||
>
|
||||
> <span class="error">Error: syntax error in pagespec "(./posts/*/*/* and !*/Discussion) and (./posts/*/*/* and !*/Discussion and not tagged(tags/random/hidden))"</span>
|
||||
>
|
||||
> [[done]]. --[[smcv]]
|
||||
|
||||
> > As per IRC: Thanks. As an aside, shouldn't this ikiwiki instance ignore directives in normal text? The problem may be non-trivial, but still... -- Richard
|
||||
|
||||
>>> "Normal text" is exactly where directives go, so, not really.
|
||||
>>> If you mean verbatim text (e.g. indentation in Markdown): the fact that
|
||||
>>> directives still expand to HTML, which is then treated as verbatim, is an
|
||||
>>> unfortunate result of how ikiwiki interacts with pages' markup languages
|
||||
>>> (directives and wikilinks happen before markup is converted to HTML). --[[smcv]]
|
|
@ -30,3 +30,5 @@ index a7baa5f..c9650d0 100644
|
|||
"""]]
|
||||
|
||||
I'm not writing this to a branch out of sheer shame of my misunderstanding. ;) There also may be a workaround that could be done in Nginx too. --[[anarcat]]
|
||||
|
||||
> [[applied|done]], but I'm not happy with this either --[[Joey]]
|
||||
|
|
|
@ -1,3 +1,12 @@
|
|||
When commenting on, or I think editing, a page that uses the trail
|
||||
plugin, the trail is displayed across the top of the page. This should not
|
||||
happen, probably. --[[Joey]]
|
||||
|
||||
> [[!template id=gitbranch branch=smcv/ready/no-trails-if-dynamic author="[[smcv]]"]]
|
||||
> [[!tag patch]]
|
||||
> Fixed in my branch. --[[smcv]]
|
||||
|
||||
>> [[merged|done]], although I am ambivilant about hiding the search box,
|
||||
>> and unsure about hiding the sidebar. At least the latter fixes an
|
||||
>> annoying layout problem with the comment page, where the textarea
|
||||
>> appears below the sidebar due to its width. --[[Joey]]
|
||||
|
|
|
@ -17,3 +17,5 @@ and a suitable whilst loop looks to be all that's needed...
|
|||
Any pointers appreciated.
|
||||
|
||||
A [[!taglink patch]] has been proposed in [comment](#comment-d6f94e2b779d1c038b6359aad79ed14b)
|
||||
|
||||
> This has been applied. --[[Joey]]
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
All the ikiwiki blogs I have seen have a single user blog. Is it possible to give every user a blog, where they can create their own pages in their own directory = based on their user name?
|
||||
|
||||
I feel that a wiki might give more options in the way users share and collaborate when compared to a blog engine (like Word Press in multi user format)
|
||||
|
||||
Is this the best place to post a question like this? There doesn't seem to be much traffic in this forum
|
||||
Thanks for your help
|
||||
Richard
|
|
@ -0,0 +1,12 @@
|
|||
[[!comment format=mdwn
|
||||
username="https://www.google.com/accounts/o8/id?id=AItOawm6gCEo_Z36OJ7x5kyZn52lEVvyjn3zSUc"
|
||||
nickname="Ángel"
|
||||
subject="comment 1"
|
||||
date="2013-05-31T16:03:03Z"
|
||||
content="""
|
||||
Simply add the NE (No escape) flag:
|
||||
|
||||
RewriteEngine on
|
||||
RewriteCond %{HTTP_HOST} ^www\.ciffer\.net$
|
||||
RewriteRule /(.*) http://ciffer.net/$1 [L,R,NE]
|
||||
"""]]
|
|
@ -0,0 +1,17 @@
|
|||
I am getting continuous spam like this:
|
||||
|
||||
discussion 85.25.146.11 web 11:02:19 05/17/13 2rand[0,1,1]
|
||||
discussion 85.25.146.11 web 11:02:13 05/17/13 2rand[0,1,1]
|
||||
|
||||
The bot uses an IP address as the username and puts '2rand[0,1,1]' as comment text.
|
||||
|
||||
I do not have a page 'discussion' in use, so I have redirected this page with an apache2
|
||||
Alias to a static page, just in case anyone stumbles on it. This means it cannot really
|
||||
be edited via the web. However the bots that post
|
||||
this spam are evidently not opening the page to edit it, but merely sending a cgi request
|
||||
as if they had edited the page. The result is that no damage is done on the site and no
|
||||
benefit is achieved for the spammer since google cannot see the result. However, the
|
||||
logs are stuffed with spurious entries and a page is constantly recompiled, which wastes
|
||||
resources.
|
||||
|
||||
Is there some way to reject edits that do not arise from an established session?
|
|
@ -0,0 +1,19 @@
|
|||
[[!comment format=mdwn
|
||||
username="http://joeyh.name/"
|
||||
nickname="joey"
|
||||
subject="comment 1"
|
||||
date="2013-05-17T17:55:46Z"
|
||||
content="""
|
||||
Normally ikiwiki requires a valid session cookie of a logged in user to edit pages. It sounds like you may have the opendiscussion or anonok plugins enabled, which allows anyone to edit without logging in. Recommend disabling them.
|
||||
|
||||
Since you know the spammer's IP, put it into ikiwiki.setup:
|
||||
|
||||
<pre>
|
||||
banned_users:
|
||||
- ip(85.25.146.11)
|
||||
</pre>
|
||||
|
||||
If the user was logging in, you could also put their username in the ban list.
|
||||
|
||||
You can also try enabling the blogspam plugin.
|
||||
"""]]
|
|
@ -0,0 +1,16 @@
|
|||
[[!comment format=mdwn
|
||||
username="http://claimid.com/richard-lyons"
|
||||
nickname="richard-lyons"
|
||||
subject="comment 2"
|
||||
date="2013-05-17T20:56:23Z"
|
||||
content="""
|
||||
I did indeed have opendiscussion active. I shall wait to see what happens after disabling it.
|
||||
|
||||
The bots seem to make 5 consecutive edits at short intervals (around 2 minutes) using an IP
|
||||
address as a username. I do not know if the IP is the one from which they work. There are
|
||||
usually two or three sets of five edits using different IP addresses as username in each hour.
|
||||
|
||||
I did try blocking specific IPs but they constantly change.
|
||||
|
||||
It would be good if blocking could match a regexp, but as far as I can see this is not an option,
|
||||
"""]]
|
|
@ -0,0 +1,8 @@
|
|||
[[!comment format=mdwn
|
||||
username="http://claimid.com/richard-lyons"
|
||||
nickname="richard-lyons"
|
||||
subject="SOLVED -- How can I prevent spam?"
|
||||
date="2013-05-18T08:13:19Z"
|
||||
content="""
|
||||
I can now confirm that this particular attack has stopped after removing the opendiscussion plugin.
|
||||
"""]]
|
|
@ -0,0 +1,2 @@
|
|||
I am using ikiwiki for a spanish language wiki. I've read the [[translation]] page and [[plugins/po]] plugin page but it is not completely clear to me. As I understand it the po plugin is the recommended way to create translated versions of existing pages in your wiki based on a master language. But I actually don't need that as myself and other users already edit the wiki in spanish. What I would actually like is to have the ikiwiki interface itself translated into spanish.
|
||||
Is it possible to have my wiki always appear in spanish? I can see that the debian package already includes po files for spanish. How do i activate the spanish translation permanently? Did I miss something obvious?
|
|
@ -11,3 +11,8 @@ Anyway - I've realised that a big part of the interactive todo lists stuff is tr
|
|||
Second, and in a way related, I've been mooting hacking fastcgi support into ikiwiki. Essentially one ikiwiki.cgi process would persist and serve CGI-ish requests on stdin/stdout. The initial content-scanning and dependency generation would happen once and not need to be repeated for future requests. Although, all state-changing operations would need to be careful to ensure the in-memory models were accurate. Also, I don't know how suited the data structures would be for persistence, since the current model is build em up, throw em away, they might not be space-efficient enough for persistence.
|
||||
|
||||
If I did attempt this, I would want to avoid restructuring things in a way which would impair ikiwiki's core philosophy of being a static compiler. -- [[Jon]]
|
||||
|
||||
> This is quite interesting! There is a related discussion about FastCGI
|
||||
> support (and therefore better support for Nginx, for example) in
|
||||
> [[todo/fastcgi_or_modperl_installation_instructions/]]... --
|
||||
> [[anarcat]]
|
||||
|
|
|
@ -19,7 +19,7 @@ Projects & Organizations
|
|||
========================
|
||||
|
||||
* [This wiki](http://ikiwiki.info) (of course!)
|
||||
<!-- * [NetBSD wiki](http://wiki.netbsd.org) -->
|
||||
* [NetBSD wiki](http://wiki.netbsd.org)
|
||||
* The [GNU Hurd](http://www.gnu.org/software/hurd/)
|
||||
* [DragonFly BSD](http://www.dragonflybsd.org/)
|
||||
* [Monotone](http://wiki.monotone.ca/)
|
||||
|
@ -88,6 +88,9 @@ Projects & Organizations
|
|||
* [The RS-232 Club](http://rs232club.org)
|
||||
* [FusionInventory project](http://www.fusioninventory.org)
|
||||
* FabLab Deventer i.o.
|
||||
* [Börn og tónlist](http://bornogtonlist.net/) - an Icelandic open-content site, primarily for kindergarten teachers, about music and music-related activites with children. Migrated from MediaWiki to IkiWiki in June 2013. Heavily changed appearance with only minimal changes to page.tmpl.
|
||||
* [Réseaulibre.ca](http://wiki.reseaulibre.ca) - a mesh project in Montréal, most data is stored in the wiki, including IP address allocation and geographic data. Features map ([[plugins/osm]]) integration.
|
||||
* [Foufem](http://foufem.orangeseeds.org/) - Foufem, a feminist hackerspace
|
||||
|
||||
Personal sites and blogs
|
||||
========================
|
||||
|
@ -191,3 +194,5 @@ Personal sites and blogs
|
|||
* [WikiAtoBR](http://wiki.hi.ato.br) Open, free and annoymous wiki. No need for account registering and login. It is Brazilian so it is in Portuguese.
|
||||
* [Manifesto](http://manifesto.hi.ato.br) Open, free and annoymous blog. No need for account registering and login. It is Brazilian so it is in Portuguese.
|
||||
* [Z is for Zombies](http://blog.zouish.org/) — personal blog/site of Francesca Ciceri
|
||||
* Julien Lefrique's [homepage](http://julien.lefrique.name/), hosted on [GitHub pages](https://github.com/jlefrique/jlefrique.github.com) with CGI disabled
|
||||
* [Anarcat's homepage](http://anarcat.ath.cx/) - with a custom [[theme|theme_market]]
|
||||
|
|
|
@ -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 70 "Accept only OpenID for logins" 21 "Accept only password logins" 46 "Accept both"]]
|
||||
[[!poll 70 "Accept only OpenID for logins" 21 "Accept only password logins" 47 "Accept both"]]
|
||||
|
|
|
@ -1,17 +0,0 @@
|
|||
ikiwiki 3.20121016 released with [[!toggle text="these changes"]]
|
||||
[[!toggleable text="""
|
||||
* monochrome: New theme, contributed by Jon Dowland.
|
||||
* rst: Ported to python 3, while still also being valid python 2.
|
||||
Thanks, W. Trevor King
|
||||
* Try to avoid a situation in which so many ikiwiki cgi wrapper programs
|
||||
are running, all waiting on some long-running thing like a site rebuild,
|
||||
that it prevents the web server from doing anything else. The current
|
||||
approach only avoids this problem for GET requests; if multiple cgi's
|
||||
run GETs on a site at the same time, one will display a "please wait"
|
||||
page for a configurable number of seconds, which then redirects to retry.
|
||||
To enable this protection, set cgi\_overload\_delay to the number of
|
||||
seconds to wait. This is not enabled by default.
|
||||
* Add back a 1em margin between archivepage divs.
|
||||
* recentchangesdiff: Correct broken template that resulted in duplicate
|
||||
diff icons being displayed, and bloated the recentchanges page with
|
||||
inline diffs when the configuration should have not allowed them."""]]
|
|
@ -0,0 +1,9 @@
|
|||
ikiwiki 3.20130518 released with [[!toggle text="these changes"]]
|
||||
[[!toggleable text="""
|
||||
* Fix test suite to not fail when XML::Twig is not installed.
|
||||
Closes: #[707436](http://bugs.debian.org/707436)
|
||||
* theme: Now <TMPL\_IF THEME\_$NAME> can be used in all templates when
|
||||
a theme is enabled.
|
||||
* notifyemail: Fix bug that caused duplicate emails to be sent when
|
||||
site was rebuilt.
|
||||
* bzr: bzr rm no longer has a --force option, remove"""]]
|
|
@ -410,3 +410,49 @@ I've integrated the jquery masonry plugin into the albumitem template and it wor
|
|||
But is there a way to create thumnails of different sizes? I've passed thumnailsize option
|
||||
and value to album directive and while it does create the new thumbnail sizes it doesn't use them,
|
||||
The 96x96 thumbnails still appear on the page no matter what I do. - jaime
|
||||
|
||||
----
|
||||
|
||||
Hi, the plugin looks great, but I am probably too dumb to use it ;( here is what I did:
|
||||
created page gal.mdwn with just \[\[!album\]\] directive (no arguments) and subdirectory gal/ with images in form img_1234.jpg
|
||||
|
||||
when I run ikiwiki, I get something completely wrong though:
|
||||
|
||||
generated gal/index.html page contains following code repeated for every image:
|
||||
|
||||
<div class="album-viewer">
|
||||
<div id="album-img">
|
||||
<div class="album-finish">
|
||||
<a href="./"><span class="album-arrow">↑</span></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
So no links to any images, etc.
|
||||
|
||||
The pages for individual images are generated though, but also not correct. Trails section is perfect, but the main part is wrong:
|
||||
|
||||
<div class="album-prev">
|
||||
<a><span class="album-arrow">â†<90></span></a><br />
|
||||
<div class="album-thumbnail">
|
||||
<span class="selflink">
|
||||
<img src="./96x96-img_2913.jpg" width="96" height="72" alt="img 2913" title="img 2913" class="img" /></span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
This really seems like this should be in the album page and not individul page. It is only thumbnail and not full image. Also the full image is not in the generated html tree at all!
|
||||
|
||||
I am using ikiwiki 3.20130518, and got the album sources from the links of [this page](http://ikiwiki.info/plugins/contrib/album/) (part manual installation)
|
||||
|
||||
Any hint about what do I do wrong?
|
||||
|
||||
Thanks Lukas
|
||||
|
||||
> This plugin is not really finished. I probably need to update it for
|
||||
> current ikiwiki. I'll try to update it (and also update my demo
|
||||
> and installation instructions) at some point. --[[smcv]]
|
||||
|
||||
>> I have to appologize, I accidentally copied the template wrongly and that caused all the issues ;(
|
||||
>> So now after two days debugging and tracing, I just fixed that and it works. Well, at least a learnt
|
||||
>> a lot about ikiwiki internal ;-)
|
||||
>> Thanks for all the work you did on the plugin! --Lukas
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
[[!template id="plugin" name="mathjax" author="Baldur Kristinsson"]]
|
||||
|
||||
The [mathjax plugin](https://github.com/bk/ikiwiki-plugin-mathjax), available on GitHub, provides easy MathJax support for ikiwiki.
|
||||
|
||||
Features:
|
||||
|
||||
- No change needed to page.tmpl
|
||||
- Javascript is only loaded on pages which need it.
|
||||
- Both inline and display math are supported.
|
||||
- Unlike [[the pandoc plugin|plugins/contrib/pandoc]] or a solution based on editing page.tmpl, no irritating conflicts with the smiley plugin.
|
||||
- Unlike the pandoc plugin, it is easy to use in shared hosting or other environments where you have difficulty in installing extra software (beyond Perl modules, obviously).
|
||||
|
||||
However, if you need the power of Pandoc, such as bibliography support or pdf generation, then that is probably the better option for you.
|
|
@ -324,6 +324,7 @@ div.progress-done {
|
|||
.popup .paren,
|
||||
.popup .expand {
|
||||
display: none;
|
||||
text-align: left;
|
||||
}
|
||||
.popup:hover .balloon,
|
||||
.popup:focus .balloon {
|
||||
|
|
|
@ -11,6 +11,6 @@
|
|||
<li>[[TipJar]]</li>
|
||||
</ul>
|
||||
<a href="http://flattr.com/thing/39811/ikiwiki">
|
||||
<img src="http://api.flattr.com/button/flattr-badge-large.png"
|
||||
<img src="https://api.flattr.com/button/flattr-badge-large.png"
|
||||
alt="Flattr this" title="Flattr this" /></a>
|
||||
</div>
|
||||
|
|
|
@ -9,3 +9,5 @@ Feel free to add your own [[theme|themes]] here, but first consider writing a si
|
|||
* **[[AntPortal theme|https://github.com/AntPortal/ikiwiked]]**, contributed by Danny, see an example [[on the Antportal wiki|https://antportal.com/wiki/]]
|
||||
|
||||
* **[[Night city theme|http://anarcat.ath.cx/night_city/README/]]**, contributed by [[anarcat]], see an example [[on his homepage|http://anarcat.ath.cx/]]
|
||||
|
||||
* **[[Bootstrap theme|http://anonscm.debian.org/gitweb/?p=users/jak/website.git;a=summary]]**, contributed by [[JAK LINUX|http://jak-linux.org/about/]], based on [[Twitter Bootstrap|http://twitter.github.com/bootstrap/]]
|
||||
|
|
|
@ -3,7 +3,9 @@ ikiwiki a nice look and feel. The local.css [[CSS]] file is left
|
|||
free for you to further customize.
|
||||
|
||||
Ikiwiki now comes with several themes contributed by users.
|
||||
You can enable the [[theme_plugin|plugins/theme]] to use any of these:
|
||||
You can enable the [[theme_plugin|plugins/theme]] to use any of
|
||||
these, but you can also deploy custom themes maintained by the
|
||||
community from the [[theme market]].
|
||||
|
||||
[[!img actiontabs_small.png align=left]] The **actiontabs** theme, contributed by
|
||||
[[svend]]. This style sheet displays the action list
|
||||
|
|
|
@ -7,3 +7,14 @@ For an example of the theme in action, see: [[https://antportal.com/wiki/]]
|
|||
> Shouldn't we just make people post their themes in the [[themes]] page? Or maybe we should make a [[theme market]]? --[[anarcat]]
|
||||
|
||||
> I did just that. -- [[anarcat]]
|
||||
|
||||
What is the process for merging a theme in Ikiwiki? It seems to me the
|
||||
[[Bootstrap theme|http://www2.tblein.eu/posts/How_to_have_a_nice_design_for_ikiwiki/]]
|
||||
could improve the options a lot... See the [[theme market]] for the
|
||||
links to the actual theme. -- [[anarcat]]
|
||||
|
||||
> Step 1 is to not need two versions of page.tmpl to be maintained.
|
||||
> This is, unfortunately, the reason why I have not pulled in the bootstrap
|
||||
> theme yet. I recently made `<TMPL_IF THEME_$NAME>` be available,
|
||||
> so the page.tmpl could use that to do different things if the boostrap
|
||||
> theme was enabled. --[[Joey]]
|
||||
|
|
|
@ -15,7 +15,10 @@ configuration changes should work anywhere.
|
|||
|
||||
## apache 2
|
||||
|
||||
* Edit /etc/apache2/apache2.conf and add a line like this:
|
||||
* Make sure the cgi module is loaded. (Ie, `a2enmod cgi`)
|
||||
|
||||
* Edit /etc/apache2/apache2.conf (or /etc/apache2/mods-available/mime.conf)
|
||||
and add a line like this:
|
||||
|
||||
AddHandler cgi-script .cgi
|
||||
|
||||
|
@ -26,8 +29,6 @@ configuration changes should work anywhere.
|
|||
Or, if you've put it in a `~/public_html`, edit
|
||||
`/etc/apache2/mods-available/userdir.conf`.
|
||||
|
||||
You may also want to install some dependencies to enable CGI in apache2 setup as: `libcgi-formbuilder-perl` and `libcgi-session-perl`.
|
||||
|
||||
* If your wiki is in `~/public_html` and does not appear when you enter the URL given by the installer, check that you have
|
||||
the userdir mod enabled (there should be simlinks to userdir.load and userdir.conf in /etc/apache2/modes-enabled). If not,
|
||||
run `a2enmod userdir` and reload apache2.
|
||||
|
|
|
@ -90,3 +90,5 @@ Regards,
|
|||
}
|
||||
.popup:hover .balloon,
|
||||
.popup:focus .balloon {
|
||||
|
||||
> [[applied|done]] --[[Joey]]
|
||||
|
|
|
@ -95,3 +95,5 @@ index 285013e..151e839 100644
|
|||
</pre>
|
||||
|
||||
[[!tag patch]]
|
||||
|
||||
> [[done]] --[[Joey]]
|
||||
|
|
|
@ -22,18 +22,18 @@ critical eyes ([[smcv]]?) raking over my diffs. --[[schmonz]]
|
|||
|
||||
[[!table data="""
|
||||
Feature |iTunes RSS|iTunes Atom|Downcast RSS|Downcast Atom
|
||||
Feed image |{X} |{X} |{X} |{X}
|
||||
Feed image | | | |
|
||||
Feed title |(./) |(./) |(./) |(./)
|
||||
Feed publisher |{X} |{X} |{X} |{X}
|
||||
Feed "category" |{X} |{X} |{X} |{X}
|
||||
Feed publisher | | | |
|
||||
Feed "category" | | | |
|
||||
Feed date |(./) |(./) |(./) |(./)
|
||||
Feed description |(./) |(./) |(./) |{X}
|
||||
Episode image |{X} |{X} |{X} |{X}
|
||||
Feed description |(./) |(./) |(./) |
|
||||
Episode image | | | |
|
||||
Episode title |(./) |(./) |(./) |(./)
|
||||
Episode date |(./) |(./) |(./) |(./)
|
||||
Episode duration |{X} |{X} |{X} |{X}
|
||||
Episode author |{X} |{X} |{X} |{X}
|
||||
Episode description|(./) |(./) |(./) |{X}
|
||||
Episode duration | | | |
|
||||
Episode author | | | |
|
||||
Episode description|(./) |(./) |(./) |
|
||||
Episode enclosure |(./) |(./) |(./) |(./)
|
||||
"""]]
|
||||
|
||||
|
@ -225,3 +225,106 @@ it with ikiwiki instead.
|
|||
* Configurably generate additional subscription links (such as
|
||||
iTunes) alongside the RSS/Atom ones in [[plugins/inline]].
|
||||
* Support Apple's "enhanced podcasts" (if they're still relevant).
|
||||
|
||||
### code review
|
||||
|
||||
+ # XXX better way to compute relative to srcdir?
|
||||
+ my $file = $absurl;
|
||||
+ $file =~ s|^$config{url}/||;
|
||||
|
||||
I don't think ikiwiki offers a better way to do that, because there is
|
||||
normally no reason to do that. Why does it need an url of this form here?
|
||||
--[[Joey]]
|
||||
|
||||
> In all the popular, production-quality podcast feeds I've looked
|
||||
> at, enclosure URLs are always absolute (even when they could be
|
||||
> expressed concisely as relative). [Apple's
|
||||
> example](http://www.apple.com/itunes/podcasts/specs.html#example)
|
||||
> does too. So I told \[[!meta]] to call `urlto()` with the third
|
||||
> parameter true, which means the \[[!inline]] code here gets an
|
||||
> absolute URL in `$pagestate{$p}{meta}{enclosure}`. To compute the
|
||||
> enclosure's metadata, though, we of course need it as a local path.
|
||||
> I didn't see a less
|
||||
> [ongepotchket](http://www.jewish-languages.org/jewish-english-lexicon/words/1402)
|
||||
> way at the time. If you have a better idea, I'm happy to hear it;
|
||||
> if not, I'll add an explanatory comment. --[[schmonz]]
|
||||
|
||||
>> I would be more comfortable with this if two two different forms of url
|
||||
>> you need were both generated by calling urlto. It'd be fine to call
|
||||
>> it more than once. --[[Joey]]
|
||||
|
||||
>>> Heh, it was even easier than that! (Hooray for tests.) Done.
|
||||
>>> --[[schmonz]]
|
||||
|
||||
+<TMPL_IF HTML5><section id="inlineenclosure"><TMPL_ELSE><div id="inlineenclosure"></TMPL_IF>
|
||||
+<TMPL_IF ENCLOSURE>
|
||||
|
||||
Can't we avoid adding this div when there's no enclosure? --[[Joey]]
|
||||
|
||||
> Sure, I've moved the `<TMPL_IF ENCLOSURE>` check to outside the
|
||||
> section-and-div block for `{,inline}page.tmpl`. --[[schmonz]]
|
||||
|
||||
+<a href="<TMPL_VAR ENCLOSURE>">Download this episode</a>
|
||||
|
||||
"Download this episode" is pretty specific to particular use cases.
|
||||
Can this be made more generic, perhaps just "Download"? --[[Joey]]
|
||||
|
||||
> Yep, I got a little carried away. Done. --[[schmonz]]
|
||||
|
||||
-<TMPL_IF AUTHOR>
|
||||
- <title><TMPL_VAR AUTHOR ESCAPE=HTML>: <TMPL_VAR TITLE></title>
|
||||
- <dcterms:creator><TMPL_VAR AUTHOR ESCAPE=HTML></dcterms:creator>
|
||||
|
||||
This change removes the author name from the title of the rss feed, which
|
||||
does not seem necessary for fancy podcasts. And it is a change that
|
||||
could negatively impact eg, Planet style aggregators using ikiwiki. --[[Joey]]
|
||||
|
||||
> While comparing how feeds render in podcatchers, I noticed that
|
||||
> RSS and Atom were inconsistent in a couple ways, of which this was
|
||||
> one. The way I noticed it: with RSS, valuable title space was being
|
||||
> spent to display the author. I figured Atom's display was the one
|
||||
> worth matching. You're right, of course, that planets using the
|
||||
> default template and somehow relying on the current author-in-the-title
|
||||
> rendering for RSS feeds (but not Atom feeds!) would be broken by
|
||||
> this change. I'm having trouble imagining exactly what would break,
|
||||
> though, since guids and timestamps are unaffected. Would it suffice
|
||||
> to provide a note in the changelog warning people to be careful
|
||||
> upgrading their planets, and to customize `rssitem.tmpl` if they
|
||||
> really prefer the old behavior (or don't want to take any chances)?
|
||||
> --[[schmonz]]
|
||||
|
||||
>> A specific example I know of is updo.debian.net, when used with
|
||||
>> rss2email. Without the author name there, one cannot see who posted
|
||||
>> an item. It's worth noting that planet.debian.org does the same thing
|
||||
>> with its rss feed. (That's probably what I copied.) Atom feeds may
|
||||
>> not have this problem, don't know. --[[Joey]]
|
||||
|
||||
>>> Okay, that's easy to reproduce. It looks like this _might_ be
|
||||
>>> a simple matter of getting \[[!aggregate]] to populate author in
|
||||
>>> `add_page()`. I'll see what I can figure out. --[[schmonz]]
|
||||
|
||||
+++ b/templates/rsspage.tmpl
|
||||
+ xmlns:atom="http://www.w3.org/2005/Atom"
|
||||
+<atom:link href="<TMPL_VAR FEEDURL>" rel="self" type="application/rss+xml" />
|
||||
|
||||
Why is it using atom namespace inside an rss feed? What are the chances
|
||||
every crummy rss reader on earth is going to understand this? I'd put it at
|
||||
about 0%; I doubt ikiwiki's own rss reader understands such a mashup.
|
||||
--[[Joey]]
|
||||
|
||||
> The validator I used (<http://validator.w3.org/>, I think) told me to.
|
||||
> Pretty sure it doesn't make anything work better in the podcatchers
|
||||
> I tried. Hadn't considered that it might break some readers.
|
||||
> Removed. --[[schmonz]]
|
||||
|
||||
+<generator>ikiwiki</generator>
|
||||
|
||||
Does this added tag provide any benefits? --[[Joey]]
|
||||
|
||||
> Consistency with the Atom feed, and of course it trumpets ikiwiki
|
||||
> to software and/or curious humans who inspect their feeds. The tag
|
||||
> arrived only in RSS 2.0, but that's already the version we're
|
||||
> claiming to be, and it's over a decade old. Seems much less risky
|
||||
> than the atom namespace bits. --[[schmonz]]
|
||||
|
||||
>> Sounds ok then. --[[Joey]]
|
||||
|
|
|
@ -1,20 +1,32 @@
|
|||
[Amitai Schlair](http://www.schmonz.com/) uses ikiwiki
|
||||
for all sorts of things:
|
||||
|
||||
* a undergraduate group's university-provided-static-hosted site
|
||||
(with [[plugins/rsync]] and a [WIND
|
||||
authentication](http://www.columbia.edu/acis/rad/authmethods/wind/)
|
||||
plugin)
|
||||
* a major open-source project's wiki (with the [[rcs/cvs]] plugin)
|
||||
* team documentation and project planning at work: product and
|
||||
sprint backlogs, burndown charts, release plans/procedures/announcements,
|
||||
aggregating feeds of shared interest, etc. (with the
|
||||
[[plugins/contrib/dynamiccookies]] and [[plugins/contrib/proxies]]
|
||||
plugins)
|
||||
* personal to-do and scratch space
|
||||
|
||||
ikiwiki contributions:
|
||||
[Amitai Schlair](http://www.schmonz.com/) has contributed code to ikiwiki...
|
||||
|
||||
[[!map
|
||||
pages="!*/Discussion and ((link(users/schmonz) and plugins/*) or rcs/cvs or todo/fancypodcast)"
|
||||
]]
|
||||
|
||||
...and uses ikiwiki for all sorts of things:
|
||||
|
||||
## Public
|
||||
|
||||
* [A major open-source project's wiki](http://wiki.netbsd.org) (with
|
||||
the [[rcs/cvs]] plugin)
|
||||
* [An undergraduate group's university-provided-static-hosted
|
||||
site](http://www.columbia.edu/cu/philo/) (with [[plugins/rsync]] and a [WIND
|
||||
authentication](http://www.columbia.edu/acis/rad/authmethods/wind/) plugin)
|
||||
* [A small personal site](http://www.anglofish.net/) (happily hosted at
|
||||
[Branchable](http://www.branchable.com/))
|
||||
|
||||
## Non-public
|
||||
|
||||
* At work, team documentation and project planning: product and sprint
|
||||
backlogs, burndown charts, release plans/procedures/announcements,
|
||||
aggregating feeds of shared interest, etc. (with the
|
||||
[[plugins/contrib/dynamiccookies]] and [[plugins/contrib/proxies]] plugins)
|
||||
* On my laptop, personal to-do and scratch space
|
||||
* [A small personal site](http://podcast.schmonz.com/) (happily hosted at
|
||||
[Branchable](http://www.branchable.com/))
|
||||
|
||||
## Non-yet-ikiwiki
|
||||
|
||||
* [My personal web site](http://www.schmonz.com/) (pending
|
||||
[[todo/fancypodcast]] integration)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
Name: ikiwiki
|
||||
Version: 3.20130504
|
||||
Version: 3.20130518
|
||||
Release: 1%{?dist}
|
||||
Summary: A wiki compiler
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2013-05-04 23:52-0400\n"
|
||||
"POT-Creation-Date: 2013-05-18 16:34-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"
|
||||
|
@ -561,11 +561,11 @@ msgstr ""
|
|||
msgid "Cannot subscribe your email address without logging in."
|
||||
msgstr ""
|
||||
|
||||
#: ../IkiWiki/Plugin/notifyemail.pm:135
|
||||
#: ../IkiWiki/Plugin/notifyemail.pm:136
|
||||
msgid "change notification:"
|
||||
msgstr ""
|
||||
|
||||
#: ../IkiWiki/Plugin/notifyemail.pm:137
|
||||
#: ../IkiWiki/Plugin/notifyemail.pm:138
|
||||
msgid "comment notification:"
|
||||
msgstr ""
|
||||
|
||||
|
|
|
@ -21,6 +21,8 @@
|
|||
<TMPL_ELSE>
|
||||
<link rel="stylesheet" href="<TMPL_VAR BASEURL>local.css" type="text/css" />
|
||||
</TMPL_IF>
|
||||
|
||||
<TMPL_UNLESS DYNAMIC>
|
||||
<TMPL_IF EDITURL>
|
||||
<link rel="alternate" type="application/x-wiki" title="Edit this page" href="<TMPL_VAR EDITURL>" />
|
||||
</TMPL_IF>
|
||||
|
@ -36,6 +38,8 @@
|
|||
<link rel="next" href="<TMPL_VAR NEXTURL>" title="<TMPL_VAR NEXTTITLE>" />
|
||||
</TMPL_IF>
|
||||
</TMPL_LOOP>
|
||||
</TMPL_UNLESS>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
|
||||
|
@ -56,9 +60,11 @@
|
|||
</TMPL_IF>
|
||||
</span>
|
||||
</span>
|
||||
<TMPL_UNLESS DYNAMIC>
|
||||
<TMPL_IF SEARCHFORM>
|
||||
<TMPL_VAR SEARCHFORM>
|
||||
</TMPL_IF>
|
||||
</TMPL_UNLESS>
|
||||
<TMPL_IF HTML5></header><TMPL_ELSE></div></TMPL_IF>
|
||||
|
||||
<TMPL_IF HAVE_ACTIONS>
|
||||
|
@ -112,15 +118,19 @@
|
|||
<TMPL_IF HTML5></nav><TMPL_ELSE></div></TMPL_IF>
|
||||
</TMPL_IF>
|
||||
|
||||
<TMPL_UNLESS DYNAMIC>
|
||||
<TMPL_VAR TRAILS>
|
||||
</TMPL_UNLESS>
|
||||
|
||||
<TMPL_IF HTML5></section><TMPL_ELSE></div></TMPL_IF>
|
||||
|
||||
<TMPL_UNLESS DYNAMIC>
|
||||
<TMPL_IF SIDEBAR>
|
||||
<TMPL_IF HTML5><aside class="sidebar"><TMPL_ELSE><div class="sidebar"></TMPL_IF>
|
||||
<TMPL_VAR SIDEBAR>
|
||||
<TMPL_IF HTML5></aside><TMPL_ELSE></div></TMPL_IF>
|
||||
</TMPL_IF>
|
||||
</TMPL_UNLESS>
|
||||
|
||||
<div id="pagebody">
|
||||
|
||||
|
|
Loading…
Reference in New Issue