Merge branch 'master' into revert

Conflicts:
	doc/todo/web_reversion.mdwn
master
Joey Hess 2010-10-05 11:29:44 -04:00
commit 06b28dddec
5 changed files with 62 additions and 4 deletions

View File

@ -0,0 +1,20 @@
Wide characters should probably be supported, or, at the very least, warned about.
Test case:
mkdir -p ikiwiki-utf-test/raw ikiwiki-utf-test/rendered
for page in txt mdwn; do
echo hello > ikiwiki-utf-test/raw/$page.$page
for text in 8 16 16BE 16LE 32 32BE 32LE; do
iconv -t UTF$text ikiwiki-utf-test/raw/$page.$page > ikiwiki-utf-test/raw/$page-utf$text.$page;
done
done
ikiwiki --verbose --plugin txt --plugin mdwn ikiwiki-utf-test/raw/ ikiwiki-utf-test/rendered/
www-browser ikiwiki-utf-test/rendered/ || x-www-browser ikiwiki-utf-test/rendered/
# rm -r ikiwiki-utf-test/ # some browsers rather stupidly daemonize themselves, so this operation can't easily be safely automated
BOMless LE and BE input is probably a lost cause.
Optimally, UTF-16 (which is ubiquitous in the Windows world) and UTF-32 should be fully supported, probably by converting to mostly-UTF-8 and using `&#xXXXX;` or `&#DDDDD;` XML escapes where necessary.
Suboptimally, UTF-16 and UTF-32 should be converted to UTF-8 where cleanly possible and a warning printed where impossible.

View File

@ -65,6 +65,7 @@ think about merging them. This is recommended. :-)
* [[privat]] `git://github.com/privat/ikiwiki.git`
* [[blipvert]] `git://github.com/blipvert/ikiwiki.git`
* [[bzed|BerndZeimetz]] `git://git.recluse.de/users/bzed/ikiwiki.git`
* [[wtk]]: `git://github.com/wking/ikiwiki.git`
## branches

View File

@ -22,6 +22,8 @@ Or, set up a blog with ikiwiki, run this command instead.
% ikiwiki -setup /etc/ikiwiki/auto-blog.setup
`librpc-xml-perl` and `python-docutils` dependencies are needed.
Either way, it will ask you a couple of questions.
What will the wiki be named? foo
@ -130,7 +132,7 @@ old location won't work, and the easiest way to deal with this is to delete
them and re-checkout from the new repository location.
% rm -rf foo
% git clone /src/git/foo.git
% git clone /srv/git/foo.git
Finally, edit the setup file. Modify the settings for `srcdir`, `destdir`,
`url`, `cgiurl`, `cgi_wrapper`, `git_wrapper`, etc to reflect where

View File

@ -0,0 +1,17 @@
[[!template id=gitbranch branch=wtk/master author="[[wtk]]"]]
summary
=======
Extend inlining to handle raw files (files with unrecognized extensions).
Also raise an error in `IkiWiki::pagetype($file)` if `$file` is blank, which avoids trying to do much with missing files, etc.
I'm using the new code in my [blog][].
[blog]: http://www.physics.drexel.edu/~wking/unfolding-disasters/posts/yacc2dot/
usage
=====
\[[!inline pagenames="somefile.txt" template="raw" feeds="no"]]

View File

@ -66,8 +66,26 @@ Peter Gammie has done an initial implementation of the above.
>>
>> Please look it over and tell me what else needs fixing... -- [[peteg]]
>>> I have made my own revert branch and put a few fixes in there. Issues
>>> I noticed but have not gotten to:
>>> I have made my own revert branch and put a few fixes in there
>>> [[!template id=gitbranch branch=origin/revert author="[[joey]]"]]
>>> (and fixed all the indention..). Issues I noticed but have not gotten
>>> to: --[[Joey]]
>>>> Please change the git pointer above, then. I will work on your branch. -- [[peteg]]
>>>
>>> * `rcs_diff` already exists; why add `rcs_showpatch`?
>>> *
>>>> If `rcs_diff` is intended for human consumption, by all means we can use that. -- [[peteg]]
>>> * Would it be better for `rcs_revert` to not commit, and
>>> `rcs_commit_staged` to then be used? This would work for git, but
>>> maybe other RCSs would be problimatic. It would simplifiy the
>>> interface and allow for future mulitple-revert interfaces.
>>> * I quite don't understand why one caller of `git_parse_changes`
>>> needs it to chdir, and not the other one. It's running
>>> in the same git repo either way, and git doesn't need
>>> `git show` to run in a subdir at all..
>>>> I was aping (preserving) what was already there. I don't understand what you say about `git show` - it must run under $srcdir, surely? And empirically the CGI process wasn't in the right place. By all means simplify that. -- [[peteg]]
>>> * Probably needs to untaint the revs passed in.
>>> * Seems backwards for `rcs_preprevert` to import and
>>> use `IkiWiki::Receive`.
>>>> Indeed. This is saying that the checking code in IkiWiki::Receive is in the wrong place. I think it would be better to set up some general hooks and shuffle it into a plugin, for then other plugins that maintain special files in the repo can have a say about validity. -- [[peteg]]