Merge remote branch 'upstream/master' into prv/po

Conflicts:
	doc/plugins/po.mdwn
master
intrigeri 2010-06-29 15:53:51 +02:00
commit 1786b106a9
18 changed files with 80 additions and 16 deletions

1
.gitattributes vendored 100644
View File

@ -0,0 +1 @@
debian/changelog merge=dpkg-mergechangelogs

View File

@ -33,8 +33,8 @@ sub htmlize (@) {
# hnb outputs version number etc. every time to STDOUT, so
# using files makes it easier to seprarate.
my $tmpin = mkstemp( "/tmp/ikiwiki-hnbin.XXXXXXXXXX" );
my $tmpout = mkstemp( "/tmp/ikiwiki-hnbout.XXXXXXXXXX" );
my ($infh, $tmpin) = mkstemp( "/tmp/ikiwiki-hnbin.XXXXXXXXXX" );
my ($outfh, $tmpout) = mkstemp( "/tmp/ikiwiki-hnbout.XXXXXXXXXX" );
open(TMP, '>', $tmpin) or die "Can't write to $tmpin: $!";
print TMP $params{content};

2
debian/changelog vendored
View File

@ -12,6 +12,8 @@ ikiwiki (3.20100624) UNRELEASED; urgency=low
* Fixed some confusion and bugginess about whether
rcs_getctime/rcs_getmtime were passed absolute or relative filenames.
(Make it relative like everything else.)
* hnb: Fixed broken use of mkstemp that had caused dangling temp files,
and prevented actually rendering hnb files.
-- Joey Hess <joeyh@debian.org> Wed, 23 Jun 2010 15:30:04 -0400

View File

@ -0,0 +1,17 @@
The po plugin's protection against processing loops (i.e. the
alreadyfiltered stuff) is playing against us: the template plugin
triggers a filter hooks run with the very same ($page, $destpage)
arguments pair that is used to identify an already filtered page.
Processing an included template can then mark the whole translation
page as already filtered, which prevented `po_to_markup` to be called on
the PO content.
Symptoms: the unprocessed gettext file goes unfiltered to the
generated HTML.
This has been fixed in my po branch.
-- [[intrigeri]]
[[!tag patch]]

View File

@ -147,6 +147,7 @@ Personal sites and blogs
* [Ertug Karamatli](http://pages.karamatli.com)
* [Jonatan Walck](http://jonatan.walck.i2p/) a weblog + wiki over [I2P](http://i2p2.de/). Also [mirrored](http://jonatan.walck.se/) to the Internet a few times per day.
* [Daniel Wayne Armstrong](http://circuidipity.com/)
* [Mukund](https://www.mukund.org/)
Please feel free to add your own ikiwiki site!

View File

@ -324,3 +324,5 @@ smcv's discuission of field author vs meta author above. --[[Joey]]
>>> the side-effects, but use `field` as an interface to get the values of those special fields.
>>> --[[KathrynAndersen]]
I was just looking at HTML5 and wondered if the field plugin should generate the new Microdata tags (as well as the internal structures)? <http://slides.html5rocks.com/#slide19> -- [[Will]]

View File

@ -281,6 +281,9 @@ Also, this may only happen if the page being linked to is coming from an
underlay, and the underlays lack translation to a given language.
--[[Joey]]
> Any simple testcase to reproduce it, please? I've never seen this
> happen yet. --[[intrigeri]]
Double commits of po files
--------------------------
@ -295,11 +298,18 @@ and then committed again. The second commit makes this change:
Same thing happens when a change to an existing page triggers a po file
update. --[[Joey]]
> * The s/utf-8/UTF-8 part is fixed in my po branch.
> * The ENCODING\n part is due to an inconsistency in po4a, which
> I've just send a patch for. --[[intrigeri]]
Ugly messages with empty files
------------------------------
If there are empty .mdwn files, the po plugin displays some ugly messages.
> This is due to a bug in po4a (not checking definedness of a
> variable). One-liner patch sent. --[[intrigeri]]
Translation of directives
-------------------------

View File

@ -20,8 +20,9 @@ Consider creating `$HOME/.cvsrc` if you don't have one already; the plugin doesn
* creates a repository,
* imports `$SRCDIR` into top-level module `ikiwiki` (vendor tag IKIWIKI, release tag PRE_CVS),
* configures the post-commit hook in `CVSROOT/loginfo`.
* CVS multi-directory commits happen separately; the post-commit hook sees only the first directory's changes in time for [[recentchanges|plugins/recentchanges]]. The next run of `ikiwiki --setup` will correctly re-render such a recentchanges entry. It should be possible to solve this problem with NetBSD's `commit_prep` and `log_accum` scripts (see below).
### To do
* Instead of resource-intensively scraping changesets with `cvsps`, have `ikiwiki-makerepo` set up NetBSD-like `log_accum` and `commit_prep` scripts that coalesce and keep records of commits. `cvsps` can be used as a fallback for repositories without such records.
* Have `ikiwiki-makerepo` set up NetBSD-like `log_accum` and `commit_prep` scripts that coalesce commits into changesets. Reasons:
7. Obviates the need to scrape the repo's complete history to determine the last N changesets. (Repositories without such records can fall back on the `cvsps` and `File::ReadBackwards` code.)
7. Arranges for ikiwiki to be run once per changeset, rather than CVS's once per committed file (!), which is a waste at best and bug-inducing at worst. (Currently, on multi-directory commits, only the first directory's changes get mentioned in [[recentchanges|plugins/recentchanges]].)
* Perhaps prevent web edits from attempting to create `.../CVS/foo.mdwn` (and `.../cvs/foo.mdwn` on case-insensitive filesystems); thanks to the CVS metadata directory, the attempt will fail anyway (and much more confusingly) if we don't.

View File

@ -1,5 +1,11 @@
This is the [[SandBox]], a page anyone can edit to try out ikiwiki (version [[!version ]]).
<<<<<<< HEAD
Test conflict.
=======
Testing 123.
>>>>>>> 8cc8bb52f7913e429be7e14203177ef374645718
# Header
## Subheader2

View File

@ -177,7 +177,7 @@ about using the git repositories.
Once your wiki is checked in to the revision control system, you should
configure ikiwiki to use revision control. Edit your ikiwiki.setup, set
`rcs` to the the revision control system you chose to use. Be careful,
`rcs` to the revision control system you chose to use. Be careful,
you may need to use the 'fullname'. For example, 'hg' doesn't work, you
should use mercurial. Be sure to set `svnrepo` to the directory for your
repository, if using subversion. Uncomment the configuration for the wrapper

View File

@ -0,0 +1,7 @@
The HTML page type should be fully supported by the PO plugin: po4a's
HTML support is able to extract translatable strings and to disregard
the rest.
This is implemented in my po branch, please review. --[[intrigeri]]
[[!tag patch]]

View File

@ -6,3 +6,5 @@ isn't. --[[intrigeri]]
Fixed in my po branch. --[[intrigeri]]
[[!tag patch]]
> bump?

View File

@ -2,4 +2,4 @@
[[!map pages="!*/Discussion and ((link(users/schmonz) and plugins/*) or rcs/cvs)"]]
In progress: a plugin for [WIND authentication](http://www.columbia.edu/acis/rad/authmethods/wind/).
I've also written a plugin for [WIND authentication](http://www.columbia.edu/acis/rad/authmethods/wind/), which may or may not be of general utility.

View File

@ -6,11 +6,14 @@ BEGIN {
$dir = "/tmp/ikiwiki-test-bzr.$$";
my $bzr=`which bzr`;
chomp $bzr;
if (! -x $bzr || ! mkdir($dir)) {
if (! -x $bzr) {
eval q{
use Test::More skip_all => "bzr not available or could not make test dir"
use Test::More skip_all => "bzr not available"
}
}
if (! mkdir($dir)) {
die $@;
}
}
use Test::More tests => 17;

View File

@ -8,11 +8,14 @@ BEGIN {
chomp $cvs;
my $cvsps=`which cvsps`;
chomp $cvsps;
if (! -x $cvs || ! -x $cvsps || ! mkdir($dir)) {
if (! -x $cvs || ! -x $cvsps) {
eval q{
use Test::More skip_all => "cvs or cvsps not available or could not make test dir"
use Test::More skip_all => "cvs or cvsps not available"
}
}
if (! mkdir($dir)) {
die $@;
}
foreach my $module ('File::ReadBackwards', 'File::MimeInfo') {
eval qq{use $module};
if ($@) {

View File

@ -7,11 +7,14 @@ BEGIN {
$dir="/tmp/ikiwiki-test-git.$$";
my $git=`which git`;
chomp $git;
if (! -x $git || ! mkdir($dir)) {
if (! -x $git) {
eval q{
use Test::More skip_all => "git not available or could not make test dir"
use Test::More skip_all => "git not available"
}
}
if (! mkdir($dir)) {
die $@;
}
}
use Test::More tests => 18;

View File

@ -6,11 +6,14 @@ BEGIN {
$dir = "/tmp/ikiwiki-test-hg.$$";
my $hg=`which hg`;
chomp $hg;
if (! -x $hg || ! mkdir($dir)) {
if (! -x $hg) {
eval q{
use Test::More skip_all => "hg not available or could not make test dir"
use Test::More skip_all => "hg not available"
}
}
if (! mkdir($dir)) {
die $@;
}
}
use Test::More tests => 11;

View File

@ -8,11 +8,14 @@ BEGIN {
chomp $svn;
my $svnadmin=`which svnadmin`;
chomp $svnadmin;
if (! -x $svn || ! -x $svnadmin || ! mkdir($dir)) {
if (! -x $svn || ! -x $svnadmin) {
eval q{
use Test::More skip_all => "svn not available or could not make test dir"
use Test::More skip_all => "svn or svnadmin not available"
}
}
if (! mkdir($dir)) {
die $@;
}
}
use Test::More tests => 12;