/MYMETA.json
/MYMETA.yml
*.man
+/plugins/__pycache__/
/po/cover_db
/po/html/
po/po2wiki_stamp
+ikiwiki (3.20180228) upstream; urgency=medium
+
+ * core: Don't send relative redirect URLs when behind a reverse proxy
+ * core: Escape backticks etc. in directive error messages as HTML
+ entities so that the error message is not subsequently parsed as
+ Markdown
+ * mdwn: Enable fenced code blocks, PHP Markdown Extra-style definition
+ lists and GitHub-style extensions to HTML tag syntax when used with
+ Discount >= 2.2.0 (Closes: #888055)
+ * img: Fix auto-detection of image format (if enabled, which is
+ strongly discouraged) with ImageMagick >= 6.9.8-3
+ * rst: Use Python 3 instead of Python 2
+ * build: `set -e` before each `for` loop, so that errors are reliably
+ trapped
+ * build: Use if/then instead of `||` so that the `-e` flag works
+ * build: Ensure that pm_to_blib finishes before rewriting shebang lines
+ * t: Make the img test pass with ImageMagick >= 6.9.8-3
+ (Closes: #891647)
+ * debian: Remove unused Lintian overrides for duplicate word false positives
+ * debian: Declare compliance with Debian Policy 4.1.3
+
+ -- Simon McVittie <smcv@debian.org> Wed, 28 Feb 2018 10:38:19 +0000
+
ikiwiki (3.20180105) upstream; urgency=medium
* emailauth: Fix cookie problem when user is on https and the cgiurl
chomp $error;
eval q{use HTML::Entities};
$error = encode_entities($error);
+ # Also encode most ASCII punctuation
+ # as entities so that error messages
+ # are not interpreted as Markdown etc.
+ $error = encode_entities($error, '[](){}!#$%*?@^`|~'."\\");
$ret="[[!$command <span class=\"error\">".
gettext("Error").": $error"."</span>]]";
}
my $q=shift;
eval q{use URI};
- my $topurl;
+ my $topurl = $config{cgiurl};
if (defined $q && ! $config{w3mmode} && ! $config{reverse_proxy}) {
$topurl = $q->url;
}
}
else {
# allow ImageMagick to auto-detect (potentially dangerous)
- $format = '';
+ my $im = Image::Magick->new();
+ my $r = $im->Ping(file => $in);
+ if ($r) {
+ $format = lc $r;
+ }
+ else {
+ error sprintf(gettext("failed to determine format of %s"), $file);
+ }
}
error sprintf(gettext("%s image processing disabled in img_allowed_formats configuration"), $format ? $format : "\"$extension\"") unless allowed($format ? $format : "everything");
$flags |= 0x00400000;
}
+ # Enable fenced code blocks in libmarkdown >= 2.2.0
+ # https://bugs.debian.org/888055
+ if (Text::Markdown::Discount->can("MKD_FENCEDCODE")) {
+ $flags |= Text::Markdown::Discount::MKD_FENCEDCODE();
+ }
+ else {
+ $flags |= 0x02000000;
+ }
+
+ # PHP Markdown Extra-style term\n: definition -> <dl>
+ if (Text::Markdown::Discount->can("MKD_DLEXTRA")) {
+ $flags |= Text::Markdown::Discount::MKD_DLEXTRA();
+ }
+ else {
+ $flags |= 0x01000000;
+ }
+
+ # Allow dashes and underscores in tag names
+ if (Text::Markdown::Discount->can("MKD_GITHUBTAGS")) {
+ $flags |= Text::Markdown::Discount::MKD_GITHUBTAGS();
+ }
+ else {
+ $flags |= 0x08000000;
+ }
+
return Text::Markdown::Discount::markdown($t, $flags);
}
}
docwiki:
$(PERL) -Iblib/lib $(extramodules) $(tflag) ikiwiki.in --setup docwiki.setup --refresh
-perl_shebangs:
+perl_shebangs: pm_to_blib
ifneq "$(PERL)" "/usr/bin/perl"
+ set -e; \
for file in $(shebang_scripts); do \
$(PERL) -pe "s|^#!/usr/bin/perl\b|#!$(PERL)| if 1" < $$file > "$$file.new"; \
[ -x $$file ] && chmod +x "$$file.new"; \
perl_shebangs_clean:
ifneq "$(PERL)" "/usr/bin/perl"
+ set -e; \
for file in $(shebang_scripts); do \
$(PERL) -pe "s|^#!$(PERL)\b|#!/usr/bin/perl| if 1" < $$file > "$$file.new"; \
[ -x $$file ] && chmod +x "$$file.new"; \
underlay_install:
install -d $(DESTDIR)$(PREFIX)/share/ikiwiki
+ set -e; \
for dir in `cd underlays && $(FIND) . -follow -type d`; do \
install -d $(DESTDIR)$(PREFIX)/share/ikiwiki/$$dir; \
for file in `$(FIND) underlays/$$dir -follow -maxdepth 1 -type f ! -name jquery.js ! -name jquery-ui.css ! -name jquery-ui.js ! -name jquery.tmpl.js`; do \
- cp -pRL $$file $(DESTDIR)$(PREFIX)/share/ikiwiki/$$dir 2>/dev/null || \
- install -m 644 $$file $(DESTDIR)$(PREFIX)/share/ikiwiki/$$dir; \
+ if ! cp -pRL $$file $(DESTDIR)$(PREFIX)/share/ikiwiki/$$dir 2>/dev/null; then \
+ install -m 644 $$file $(DESTDIR)$(PREFIX)/share/ikiwiki/$$dir; \
+ fi; \
done; \
done
# The directive docs become their own special underlay.
install -d $(DESTDIR)$(PREFIX)/share/ikiwiki/directives/ikiwiki/directive
+ set -e; \
for file in doc/ikiwiki/directive/*; do \
if [ -f "$$file" ]; then \
- cp -pRL $$file $(DESTDIR)$(PREFIX)/share/ikiwiki/directives/ikiwiki/directive 2>/dev/null || \
- install -m 644 $$file $(DESTDIR)$(PREFIX)/share/ikiwiki/directives/ikiwiki/directive; \
+ if ! cp -pRL $$file $(DESTDIR)$(PREFIX)/share/ikiwiki/directives/ikiwiki/directive 2>/dev/null; then \
+ install -m 644 $$file $(DESTDIR)$(PREFIX)/share/ikiwiki/directives/ikiwiki/directive; \
+ fi; \
fi \
done
# Themes have their base.css (if present) and then
# style.css appended to the normal one.
+ set -e; \
for theme in themes/*; do \
install -d $(DESTDIR)$(PREFIX)/share/ikiwiki/$$theme; \
for file in $$theme/*; do \
if echo "$$file" | grep -q style.css; then \
- (cat doc/style.css; cat $$theme/base.css 2>/dev/null; cat $$file) > $(DESTDIR)$(PREFIX)/share/ikiwiki/$$theme/style.css; \
+ (cat doc/style.css; cat $$theme/base.css 2>/dev/null || :; cat $$file) > $(DESTDIR)$(PREFIX)/share/ikiwiki/$$theme/style.css; \
elif echo "$$file" | grep -q base.css; then \
:; \
elif [ -f "$$file" ]; then \
- cp -pRL $$file $(DESTDIR)$(PREFIX)/share/ikiwiki/$$file 2>/dev/null || \
- install -m 644 $$file $(DESTDIR)$(PREFIX)/share/ikiwiki/$$file; \
+ if ! cp -pRL $$file $(DESTDIR)$(PREFIX)/share/ikiwiki/$$file 2>/dev/null; then \
+ install -m 644 $$file $(DESTDIR)$(PREFIX)/share/ikiwiki/$$file; \
+ fi; \
fi \
done; \
done
extra_install: underlay_install
# Install example sites.
+ set -e; \
for dir in `cd doc/examples; $(FIND) . -type d ! -regex '.*discussion.*'`; do \
install -d $(DESTDIR)$(PREFIX)/share/ikiwiki/examples/$$dir; \
done
+ set -e; \
for file in `cd doc/examples; $(FIND) . -type f ! -regex '.*discussion.*'`; do \
- cp -pRL doc/examples/$$file $(DESTDIR)$(PREFIX)/share/ikiwiki/examples/$$file 2>/dev/null || \
- install -m 644 doc/examples/$$file $(DESTDIR)$(PREFIX)/share/ikiwiki/examples/$$file; \
+ if ! cp -pRL doc/examples/$$file $(DESTDIR)$(PREFIX)/share/ikiwiki/examples/$$file 2>/dev/null; then \
+ install -m 644 doc/examples/$$file $(DESTDIR)$(PREFIX)/share/ikiwiki/examples/$$file; \
+ fi; \
done
+ set -e; \
for dir in `$(FIND) templates -follow -type d`; do \
install -d $(DESTDIR)$(PREFIX)/share/ikiwiki/$$dir; \
for file in `$(FIND) $$dir -follow -maxdepth 1 -type f`; do \
done
install -d $(DESTDIR)$(PREFIX)/lib/ikiwiki/plugins
+ set -e; \
for file in `$(FIND) plugins -maxdepth 1 -type f ! -path plugins/.\* ! -name \*demo\* -name \*.py`; do \
install -m 644 $$file $(DESTDIR)$(PREFIX)/lib/ikiwiki/plugins; \
done
+ set -e; \
for file in `$(FIND) plugins -maxdepth 1 -type f ! -path plugins/.\* ! -name \*demo\* ! -name \*.py ! -name \*.pyc`; do \
install -m 755 $$file $(DESTDIR)$(PREFIX)/lib/ikiwiki/plugins; \
done
install ikiwiki-w3m.cgi $(DESTDIR)$(W3M_CGI_BIN)
install -d $(DESTDIR)$(PREFIX)/bin
+ set -e; \
for prog in $(outprogs) $(scripts); do \
install $$prog $(DESTDIR)$(PREFIX)/bin/$$(echo $$prog | $(SED) 's/\.out//'); \
done
Firefox gives all kinds of warnings for unencrypted login pages.
The fix is for the login page to redirect to the https version of the wiki before showing the login form.
+
+> This is web server configuration for those sites, so not really a bug in the
+> ikiwiki software. If you run an ikiwiki instance and you have a browser-trusted certificate,
+> I would recommend:
+>
+> * setting the `url` and `cgiurl` options to `https://...`
+> * configuring your web server (frontend web server if you are using a reverse-proxy)
+> to redirect from `http://...` to `https://...` automatically, possibly excluding
+> `/.well-known/acme-challenge/` to make it easier to bootstrap Let's Encrypt certificates
+>
+> In [ikiwiki-hosting](https://ikiwiki-hosting.branchable.com/) the latter can be achieved
+> by setting the `redirect_to_https` option to `1`.
+>
+> When not using ikiwiki-hosting, the ikiwiki software does not control the web server
+> configuration, so it can't do this for you. The CGI script could redirect from http
+> to https if it knew you had a browser-trusted certificate, but it can't know that
+> unless you tell it (by setting `url` and `cgiurl`), and there's the potential for
+> infinite redirect loops in misconfigured reverse-proxy setups if it did that
+> (see [[bugs/login problem redux]]), so I think this is better solved at the web
+> server level.
+>
+> The operator of ikiwiki.info and branchable.com can change the web server
+> configuration for those sites, but other ikiwiki developers can't. --[[smcv]]
Status: 302 Found
Location: http://redacted/phd/blog/38th_Dec/?updated#comment-bd0549eb2464b5ca0544f68e6c32221e
+> Your form submission was in fact done successfully. The failing redirection to http is
+> when ikiwiki follows up the successful edit by redirecting you from the form submission
+> URL to the updated page, which is done by `IkiWiki::redirect`. --[[smcv]]
+
The CGI is served by lighttpd, but the whole site is front-ended by nginx, which reverse-proxies to lighttpd.
----
they would be generated in an HTTP form in any case, except perhaps by lighttpd's CGI handler since the back
end is HTTP. A workaround is for nginx to redirect any HTTP URI to the HTTPS equivalent. I initially disabled
that so as to have the path for letsencrypt negotiation not redirected.-- [[Users/Jon]]
+
+> Do you have the `reverse_proxy` option set to 1? (It affects how ikiwiki generates
+> self-referential URLs).
+>
+> Is the connection between nginx and lighttpd http or https?
+>
+> I think this is maybe a bug in `IkiWiki::redirect` when used in conjunction with
+> `reverse_proxy: 1`: when marked as behind a reverse proxy,
+> `IkiWiki::redirect` sent `Location: /phd/foo/bar/`, which your backend web
+> server might be misinterpreting. ikiwiki git master now sends
+> `Location: https://redacted/phd/foo/bar/` instead: does that resolve this
+> for you?
+>
+> Assuming nginx has a reasonable level of configuration, you can redirect http to https
+> for the entire server except `/.well-known/acme-challenge/` as a good way to bootstrap
+> ACME negotiation. --[[smcv]]
> Please try re-running the test with better diagnostics using
> [commit 4ace7dbb7](http://source.ikiwiki.branchable.com/?p=source.git;a=commitdiff;h=4ace7dbb7)
> and report what it says. --[[smcv]]
+
+>> I see the same issue on Fedora, with ImageMagic 6.9.9-19:
+>>
+>> # Failed test at t/img.t line 119.
+>> # got: 'no image: Exception 435: unable to open image `:t/tmp/out/imgconversions/10x-redsquare.png': No such file or directory @ error/blob.c/OpenBlob/2701'
+>> # expected: '10x10'
+>> [...]
+>>
+>> So it seems, that an empty coder prefix is not accepted anymore. To me it seems that [this commit](https://github.com/ImageMagick/ImageMagick/commit/4bc9b6b) changed the behavior. Unfortunately, the commit message doens't tell us about the reasons behind. The commit is included from version 6.9.8-3 on.
+
+>>> This should now be [[fixed|done]] in git and in the next release.
+>>> The test failure does not indicate a loss of functionality, unless
+>>> you are using uncommon image formats enabled with
+>>> `img_allowed_formats: [everything]`, which is a potential security
+>>> vulnerability because it exposes the attack surface of all
+>>> ImageMagick decoder modules. --[[smcv]]
--- /dev/null
+Following up on [[login_problem]], there's still some problems mixing https
+and http logins on sites that allow both and don't redirect http to https.
+
+> I think the only good solution to this is to configure web servers to
+> redirect http to https, which is outside the scope of the ikiwiki
+> software (but would be a useful configuration change on sites like
+> ikiwiki.info). Redirecting from CGI code is problematic because
+> reverse-proxies are a thing; see below. --[[smcv]]
+
+If the user logs in on https first, their cookie is https-only. If they
+then open the http site and do something that needs them logged in, it will
+try to log them in again. But, the https-only cookie is apparently not
+replaced by the http login cookie. The login will "succeed", but the cookie
+is inaccessible over https and so they'll not be really logged in.
+
+> Mitigation: If you have a browser-trusted certificate (which lots of
+> people do now, because Let's Encrypt exists), setting the `cgiurl` to
+> `https://...` will result in the CGI (which is the only part that
+> needs cookies) being accessed via https whenever the user follows
+> links from static content.
+> (`test_site4_cgi_is_secure_static_content_doesnt_have_to_be` in
+> `t/relativity.t`.)
+>
+> In the past I've wondered whether to add a distinction between
+> authenticating and unauthenticating CGI URLs, so that on sites that
+> don't particularly care about eavesdropping, anonymous/read-only actions
+> like `?do=goto` can go via `http`, but write actions and actions that
+> are usually authenticated like `?do=edit` go via `https`. However, in
+> 2018 with Let's Encrypt widely available, it seems reasonable to just
+> use `https` for all CGI accesses.
+> --[[smcv]]
+
+I think that the only fix for this is make the login page redirect from
+http to https, and for it to return to the https version of the page that
+prompted the login. --[[Joey]]
+
+> Redirecting the login page from http to https inside ikiwiki.cgi is
+> problematic, because ikiwiki can't reliably know whether it was already
+> accessed via https. If there is a reverse-proxy in use but the site admin
+> has not set the `reverse_proxy` option (which is not *always* necessary
+> even behind reverse proxies AIUI, and I suspect some reverse-proxied sites
+> haven't set it correctly), then ikiwiki.cgi would infinitely redirect back
+> to itself.
+>
+> For example, suppose your frontend web server is example.com and your
+> ikiwiki backend is 127.0.0.1:8080.
+>
+> * frontend web server sees an access to http://example.com/ikiwiki.cgi
+> * frontend web server reverse-proxies it to http://127.0.0.1:8080/ikiwiki.cgi
+> * backend web server invokes ikiwiki.cgi with `HTTPS` environment variable
+> undefined
+> * ikiwiki.cgi thinks "I'm being accessed via plain http" (this time correctly,
+> as it happens)
+> * ikiwiki.cgi sends a redirect to https://example.com/ikiwiki.cgi
+> * {1} web browser follows redirect
+> * frontend web server sees an access to https://example.com/ikiwiki.cgi
+> * frontend web server reverse-proxies it to http://127.0.0.1:8080/ikiwiki.cgi
+> * backend web server invokes ikiwiki.cgi with `HTTPS` environment variable
+> undefined
+> * ikiwiki.cgi thinks "I'm being accessed via plain http" (this time incorrectly!)
+> * ikiwiki.cgi sends a redirect to https://example.com/ikiwiki.cgi
+> * goto {1}
+>
+> I think this redirection is better achieved via web server configuration, like
+> the Apache configuration set up by `redirect_to_https: 1` in
+> [ikiwiki-hosting](https://ikiwiki-hosting.branchable.com/).
+>
+> If you change ikiwiki's behaviour in this area, please add test-cases to
+> `t/relativity.t` to cover the cases that changed.
+>
+> --[[smcv]]
--- /dev/null
+[[!comment format=mdwn
+ username="vegardv@75ae889e836bda8ce69bc038d8335c398a2f6f40"
+ nickname="vegardv"
+ avatar="http://cdn.libravatar.org/avatar/b35da1da5c23c19063f73defc0431ab0"
+ subject="Todo already exists for `basename`"
+ date="2018-01-10T08:54:27Z"
+ content="""
+https://ikiwiki.info/todo/Add_basename_in_edittemplate/
+"""]]
--- /dev/null
+*Note : In this post, I only consider Ikiwiki as a static site compiler, not a wiki engine.*
+
+I have been using Ikiwiki for some years, writing [[several packages|spalax]], making some small contributions, and I somehow have the feeling that IkiWiki is getting old (maybe it has some technological debt). Among the things I am missing is:
+
+* it is written in Perl, and I don't know Perl;
+* I think it could benefit from using OOP (object oriented programming);
+* the template system is very very limited (compared to some modern template engines, like [Jinja2](http://jinja.pocoo.org/) or [Django](https://docs.djangoproject.com/en/2.0/topics/templates/)).
+
+So I looked at other static site generators (only in Python, because it is the only programming language I master). My thought was: since Ikiwiki is old (as [Joeyh said](https://joeyh.name/blog/entry/twenty_years_of_free_software_--_part_1_ikiwiki/): *it was a static site generator before we knew what those were. It wasn't the first, but it broke plenty of new ground*), modern static site generators should be as good as Ikiwiki, with some design mistakes fixed, right? I was wrong.
+
+Here are a few things that Ikiwiki does well, that other tools miss (and I might be biaised, but do no think that my opinion about it is an aversion to change: I do think Ikiwiki does it better).
+
+* The other tools I tried use separate pages from images from data (each one is in its own tree directory structure). There are workarounds, but [they might have caveats](https://github.com/getnikola/nikola/issues/2266#issuecomment-365922299). This might be linked to the next point:
+* [[Wikilinks|ikiwiki/wikilink]] are great! I did not like them at first (I feared that if a page `foo` was linked to `bar`, this link might be broken later if another page `bar` was created, with a higher precedence than the original one). But I ended up liking it.
+* The way other tools can be extended seems not clean: I do not want to write complex stuff or have to use regexp to match my new directive (or wathever it is called). Ikiwiki [[directive|ikiwiki/directive]] are great: writing a new directive is both very simple and very effective.
+* Ikiwiki documentation is great (for other tools I tried, it is acceptable for using the static site, but poor for extending it).
+
+Well, this post was meant to congratulate [[joey]] and every ikiwiki contributors: its design is great (I already used "great" a few times, sorry for my poor vocabulary). What next? I can hope that every single user and contributor of ikiwiki decide to rewrite it in Python3 (to keep the great ideas, integrate some more modern tools, and avoid a fork), or, to be more realistic, I could go back in time to convince/bribe/coerce Joey to write it in Python (which would not solve everything, but would make it easier for me to contribute). A more serious path would be to have a look at [staticsite](https://github.com/spanezz/staticsite/) which is written by Enrico Zini, who seems to want the same thing I want: a "more modern" ikiwiki.
+
+-- Louis
--- /dev/null
+[[!comment format=mdwn
+ username="jon+ikiwiki@663db4cb26e845748f3e7e6d51eeb26c6014f1c3"
+ nickname="jon+ikiwiki"
+ avatar="http://cdn.libravatar.org/avatar/2a3bcb34947fceef61560bd8a2931957"
+ subject="comment 1"
+ date="2018-02-22T16:30:42Z"
+ content="""
+I have basically been on a similar journey recently. Honestly I would like to move on from IkiWiki myself, and I agree with most of your first points (except the OOP one, which I think is a red herring). I haven't done a deep evaluation of other static site generators, just a shallow one; but I haven't looked at only Python. But results across other languages are much the same. A few core concepts in IkiWiki are very *right*, IMHO: the pagespec/wikilink rules amongst them. -- [[Jon]]
+"""]]
I have a local copy of the [[rcs/Git]] page. After installing the `imagemagick-perl` package some of the elements display and others are missing including the page outlines with turned corners and all of the yellow folders. Ideas?
-- [[RonParker]]
+
+# Percentage size
+
+Would like an image to occupy 50% of the page width. Is this available? With what syntax? --[[svetlana]]
+[[!template id=links]]
+
Ikiwiki is a **wiki compiler**. It converts wiki pages into HTML pages
suitable for publishing on a website. Ikiwiki stores pages and history in a
[[revision_control_system|rcs]] such as [[Subversion|rcs/svn]] or [[rcs/Git]].
+++ /dev/null
-ikiwiki 3.20161229.1 released with [[!toggle text="these changes"]]
-[[!toggleable text="""
- * git: Attribute reverts to the user doing the revert, not the wiki
- itself.
- * git: Do not disable the commit hook while preparing a revert."""]]
\ No newline at end of file
--- /dev/null
+ikiwiki 3.20180105 released with [[!toggle text="these changes"]]
+[[!toggleable text="""
+ * emailauth: Fix cookie problem when user is on https and the cgiurl
+ uses http, by making the emailed login link use https.
+ * passwordauth: Use https for emailed password reset link when user
+ is on https.
+ * Remove openid provider icons from login selector, since openid providers
+ are increasingly not working. Verisign retired theirs, and aol and
+ yahoo/flickr are not commonly used for openid. Any users who still
+ clicked those icons to login will need to instead enter their openid url.
+ * Updated German basewiki and directives translation from
+ Sebastian Kuhnert."""]]
\ No newline at end of file
--- /dev/null
+# Bug with attachments in parent directory
+
+1. Create page '/foo', attach file baz2.png (it will be 'foo/baz2.png')
+1. Create '/foo/bar' page with '[[baz2.png]]' contents, this works and shows the image
+1. Rename /foo/bar to /iliketrains/bar
+
+Expected result, updated link inside of the page from 'baz2.png' to a relative or absolute path that works.
+
+Actual result, the link inside of the page is not updated. It stays a broken link.
+
+--[[svetlana]]
+
+# Can not rename individual attachments files
+
+It looks like I can not rename/move individual attachments files (those that are not pages) using the web interface. I need to do this on the fs. Perhaps that's intended but I am not sure. --[[svetlana]]
-- Jeremy Schultz <jeremy.schultz@uleth.ca>
`tag_autocreate` can now enable this. --[[Joey]]
+
+
+# Auto-remove tag pages?
+
+When zero pages are tagged with a particular tag, its page could be auto-removed. Would that make sense? Doesn't look like this is already implemented. --[[user/svetlana]]
>> on line 247. --[[simonraven]]
>>> Well, I re-figured out that I needed a TMPL_VAR FOO in the template(s). --[[simonraven]]
+
+<https://code.google.com/archive/p/pagedown/> is 404, <https://github.com/edrohler/pagedown-core> claims to be its copy but it does not have 'wmd' directory inside. What are the current steps to follow here? --[[svetlana]]
The MoinMoin side of things was completely re-written by [[anarcat]] and is currently still in development. That version is available at:
- git clone git://git.koumbit.net/moin2iki.git
+ git clone https://gitlab.com/anarcat/moin2iki/
It doesn't feature support to migrate from Tikiwiki anymore and focuses on MoinMoin support.
-Issues can be filed in the redmine bugtracker: <https://redmine.koumbit.net/projects/moin2iki>
-
-[[!toc levels=2]]
-
-## Usage
-
-Usage instructions are in the `README` file.
-
-## MoinMoin importer features
-
- * supports latest MoinMoin versions (tested with 1.9.x)
- * uses `git fast-import` to improve performance (10 minutes and 200M of ram for a 7 years old 2GB Moinmoin wiki)
- * multistep process allows bulk edit through git before markdown conversion, or staying with a
- * imports attachments as subpages
- * uses the per-page edit log
- * consistent: multiple runs will generate the same repository
- * re-entrant: can be run multiple times to import new changes
-
-## MoinMoin converter features
-
- * most of the inline markup
- * links
- * attachment links
- * smileys
- * images (not well tested), into [[ikiwiki/directive/img]]
- * preformatted and code areas, including [[ikiwiki/directive/format]]
- * ordered, unordered and definition lists
- * tables (although only with HTML and no styles)
-
-### Supported macros
-
- * TableOfContents, through [[ikiwiki/directive/toc]]
- * Navigation, through [[ikiwiki/directive/map]] (so as a nested
- vertical list instead of an horizontal list)
- * PageList, through [[ikiwiki/directive/map]]
- * MonthCalendar, partially, through [[ikiwiki/directive/calendar]]
- * FootNote, through multimarkdown (`[^foo]` → `[^foo]: this is the footnote`)
- * Anchor, through markdown and plain HTML
- * `<<BR>>`, through the weird line ending thing
- * AttachList, through a weird [[ikiwiki/directive/inline]]
- * FullSearch, partially, only through [[ikiwiki/directive/inline]] (so no textual search)
- * Include, partially through [[ikiwiki/directive/inline]] (so missing boundary extraction and heading level generation)
- * PageCount, same name even :)
- * OrphanedPages, through [[ikiwiki/directive/orphans]]
- * Date and Datetime, should be through [[plugins/date]] instead of
- current hack
-
-### Supported parsers
-
- * the main "moin wiki" markup
- * highlight parser, through the [[plugins/format]] plugin
- * other parsers may be supported if an equivalent plugin exists in Ikiwiki (example: [[plugins/rst]])
-
-## Current blocker
-
-This script is being used to test the conversion of the venerable [Koumbit wiki](https://wiki.koumbit.net/) into Ikiwiki, and so far progress is steady but difficult. The current blocker is:
-
- * figuring out exactly which pages should exist and which should not, as there is ambiguity in the internal datastructures of MoinMoin, which become apparent when running the conversion script, as files a missing
-
-## Todos
-
-There are also significant pieces missing:
-
- * inline parsers and hackish styled tables
- * turn categories into tags
- * name converted page to the right name depending on the `#format` parameter on top of page
- * finish a full converter run on the Koumbitwiki
- * improve the output of the converter (too much debugging)
-
-## MoinMoin features missing from ikiwiki
-
-The importer is pretty much complete, but the converter can only go so far as what features ikiwiki supports. Here are the MoinMoin features that are known to be missing from ikiwiki. Note that some of those features are available in MoinMoin only through third-party extensions.
-
- * [[todo/do_not_make_links_backwards/]] - MoinMoin and Creole use `\[[link|text]]`, while ikiwiki uses `\[[text|link]]` - for now the converter generates [[markdown]] links so this is not so much an issue, but will freak out users
- * [[todo/internal_definition_list_support/]] - includes tabling the results ([MoinMoin's DictColumns macro](http://moinmo.in/MacroMarket/DictColumns))
- * [[todo/per page ACLs]] - ([MoinMoin's ACLs](http://moinmo.in/HelpOnAccessControlLists))
- * [MailTo](http://moinmo.in/HelpOnMacros/MailTo) macro spam protection
- * list pages based on full text page search
- * extract part of other pages with the inline macro
- * specifying a template when creating a page (as opposed to matching a pagespec)
- * specifying a style for a sub-section (MoinMoin's inline parsers
- allow the user to specify a CSS class - very useful see
- [the documentation](http://moinmo.in/HelpOnMoinWikiSyntax#Using_the_wiki_parser_with_css_classes)
- to get an idea)
- * the above also keeps the SectionParser from being properly supported
- * regex matching all over the place: pagespec, basically, but all
- full text search (which is missing anyways, see above)
-
-### Missing macros
-
- * RandomPage(N) - lists N random pages, skipped
- * Gallery() - skipped
- * Gettext - translates the string accordign to internal translation
- system, ignored
- * AdvancedSearch - an elaborate search form provided by MoinMoin
- * Goto - a simple "jump to page" macro
-
-Comments and feedback always welcome! --[[anarcat]]
+Issues can be filed on the [project page](https://gitlab.com/anarcat/moin2iki/), where more information about features, installation and usage is available as well. -- [[anarcat]]
* Install [[!cpan Devel::NYTProf]]
* `PERL5OPT=-d:NYTProf`
-* `export PER5OPT`
+* `export PERL5OPT`
* Now run ikiwiki as usual, and it will generate a `nytprof.out` file.
* Run `nytprofhtml` to generate html files.
* Those can be examined to see what parts of ikiwiki are being slow.
--- /dev/null
+# Profile data incomplete
+
+Following the steps "Install Devel::NYTProf. PERL5OPT=-d:NYTProf. export PER5OPT. Now run ikiwiki as usual, and it will generate a nytprof.out file. Run nytprofhtml to generate html files.", get the following error message:
+
+ [svetlana /home/private/wiki]$ PERL5OPT=-d:NYTProf
+ [svetlana /home/private/wiki]$ export PER5OPT
+ [svetlana /home/private/wiki]$ ikiwiki --setup ikiwiki.setup
+ skipping bad filename free/To-dos.mdwn~
+ [svetlana /home/private/wiki]$ nytprofhtml
+ Reading nytprof.out
+ Profile data incomplete, inflate error -5 ((null)) at end of input file, perhaps the process didn't exit cleanly or the
+ file has been truncated (refer to TROUBLESHOOTING in the documentation)
+ [svetlana /home/private/wiki]$
+
+Typing "export NYTPROF=sigexit=int,hup,pipe,bus,segv,term" and repeating ikiwiki and nytprofhtml commands has no effect.
+
+What do I do now? Where is the TROUBLESHOOTING file located? --[[users/svetlana]]
+
+
+Found <https://metacpan.org/pod/Devel::NYTProf#%22Profile-data-incomplete,-...%22-or-%22Profile-format-error:-...%22>, however, "export NYTPROF=sigexit=1" does not help either. Running "unset PER5OPT" before running nytprofhtml does not help either as well. That leaves this problem unsolved still. --[[users/svetlana]] Fri Feb 2 08:03:13 2018
+
+Fixed by exporting "PERL5OPT" rather than "PER5OPT"; fixing typo in documentation... --[[users/svetlana]]
>>>>> If you use the httpauth and the cgiauthurl method, you can restrict a path
>>>>> like /private/* to be accessible only under the authenticated request uri.
+
+>>>>>> Note that if editing is enabled, then you should set the restriction in
+>>>>>> [[plugins/lockedit]]'s locked_pages too
+>>>>>> or they may be able to view pages by editing the page= value in the editor's
+>>>>>> query string. --[mjr](http://mjr.towers.org.uk/)
--- /dev/null
+Python 2 is officially unsupported after 2020, which is before the expected end-of-life
+date of the next round of long-term-stable distributions like Debian 10 and Ubuntu 18.04,
+so those distributions are encouraging all software that can migrate to Python 3 to do so.
+
+The down side of this is that it would make it harder to use the `rst` plugin on
+very old OS releases, or on OSs where Python 3 is available but doesn't have a `python3`
+symbolic link (if such OSs exist - [PEP 394](https://www.python.org/dev/peps/pep-0394/)
+says they shouldn't), or in shared hosting environments where Python 2 is installed but
+Python 3 isn't. (Mitigation: switching it to `python` or `python2` is a 1-line change.)
+
+For today's upload to Debian, I switched the `#!` line in the [[plugins/rst]] plugin
+to `#!/usr/bin/python3`. In upstream ikiwiki it would probably be more appropriate
+to use `#!/usr/bin/env python3`, and it would certainly be more appropriate to do it
+by changing the source rather than by using `sed` after installation. I didn't apply that
+change upstream immediately to give other maintainers a chance to comment. Thoughts?
+
+--[[smcv]]
+
+> I can attest as a pkgsrc developer, where we try to build and package
+> software on all sorts of platforms (some old and wacky), that as long
+> as the relevant Pythons build on those platforms (and we tend to make
+> sure they do), I don't foresee any negative impact of your suggested
+> change to ikiwiki. Can't attest for other situations, but am generally
+> biased toward biting future bullets as early as possible.
+> --[[schmonz]]
+
+>> Nobody objected, so it's now python3 for the next release. [[done]] --[[smcv]]
One of the goals of using a static site generator like ikiwiki, for me, is not only future-proofing and portability, but also performance. By having a small set of HTML pages with a minimal theme, we can deliver raw content much faster than a traditional CMS. This does not, however, keep us from doing optimizations that those same CMS must do in order to deliver good page performance.
+> For the CSS case, this was already proposed at [[todo/concatenating or compiling CSS]] --[[smcv]]
+
Take, for example, this [performance report of the main ikiwiki site](https://gtmetrix.com/reports/ikiwiki.info/rwUIfK6d). For a very minimal site, it is still making 8 requests and taking ~700ms to load. That's quite fast, but it could probably be cut down to 400ms if CSS and JS were aggregated. If you look at [my homepage](https://gtmetrix.com/reports/anarc.at/uAkMmZaT) the results are worse, because I have larger JS and CSS files: the impact is therefore much bigger and we're looking at 2000ms load times. (Obviously, part of the problem here is the slowness of the uplink here, but one could argue the same problem would occur for downstream users that have a slower connexion.)
One of the recommendations "YSlow" is giving is "Make fewer HTTP requests":
I speak English and Russian. I use ikiwiki at [my personal site](http://svetlana.nfshost.com).
-I also help a few software projects localize their documentation -- [vy](http://vy.branchable.com) and [guppy](http://guppy.branchable.com).
+I also help a few software projects localize their documentation -- [guppy](http://guppy.branchable.com/index.en.html).
I enjoy ikiwiki.
I am testing the po and osm plugins.
+
Name: ikiwiki
-Version: 3.20171002
+Version: 3.20180228
Release: 1%{?dist}
Summary: A wiki compiler
-#!/usr/bin/python
+#!/usr/bin/env python3
# -*- coding: utf-8 -*-
#
# proxy.py — helper for Python-based external (xml-rpc) ikiwiki plugins
-#!/usr/bin/env python
+#!/usr/bin/env python3
# -*- coding: utf-8 -*-
#
# pythondemo — demo Python ikiwiki plugin
-#!/usr/bin/env python
+#!/usr/bin/env python3
# -*- coding: utf-8 -*-
#
# rst — xml-rpc-based ikiwiki plugin to process RST files
msgstr ""
"Project-Id-Version: ikiwiki-bg\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-01-05 12:22-0400\n"
+"POT-Creation-Date: 2018-02-28 10:39+0000\n"
"PO-Revision-Date: 2007-01-12 01:19+0200\n"
"Last-Translator: Damyan Ivanov <dam@modsodtsys.com>\n"
"Language-Team: Bulgarian <dict@fsa-bg.org>\n"
msgid "You are banned."
msgstr "Достъпът ви е забранен."
-#: ../IkiWiki/CGI.pm:491 ../IkiWiki/CGI.pm:492 ../IkiWiki.pm:1672
+#: ../IkiWiki/CGI.pm:491 ../IkiWiki/CGI.pm:492 ../IkiWiki.pm:1676
msgid "Error"
msgstr "Грешка"
msgid "%s is an attachment, not a page."
msgstr ""
-#: ../IkiWiki/Plugin/git.pm:933 ../IkiWiki/Plugin/git.pm:997 ../IkiWiki.pm:1892
+#: ../IkiWiki/Plugin/git.pm:933 ../IkiWiki/Plugin/git.pm:997 ../IkiWiki.pm:1896
#, perl-format
msgid "you are not allowed to change %s"
msgstr ""
msgid "Unable to detect image type from extension"
msgstr "грешка при запис на файла „%s”: %s"
-#: ../IkiWiki/Plugin/img.pm:104 ../IkiWiki/Plugin/img.pm:136
-#: ../IkiWiki/Plugin/img.pm:175 ../IkiWiki/Plugin/img.pm:223
+#: ../IkiWiki/Plugin/img.pm:104 ../IkiWiki/Plugin/img.pm:143
+#: ../IkiWiki/Plugin/img.pm:182 ../IkiWiki/Plugin/img.pm:230
#, fuzzy, perl-format
msgid "failed to read %s: %s"
msgstr "грешка при запис на файла „%s”: %s"
-#: ../IkiWiki/Plugin/img.pm:131
+#: ../IkiWiki/Plugin/img.pm:134
+#, fuzzy, perl-format
+msgid "failed to determine format of %s"
+msgstr "грешка при запис на файла „%s”: %s"
+
+#: ../IkiWiki/Plugin/img.pm:138
#, perl-format
msgid "%s image processing disabled in img_allowed_formats configuration"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:138
+#: ../IkiWiki/Plugin/img.pm:145
#, fuzzy, perl-format
msgid "\"%s\" does not seem to be a valid %s file"
msgstr "„%s” не е изпълним файл"
-#: ../IkiWiki/Plugin/img.pm:172
+#: ../IkiWiki/Plugin/img.pm:179
#, fuzzy
msgid "Image::Magick is not installed"
msgstr "не е инсталиран polygen"
-#: ../IkiWiki/Plugin/img.pm:184
+#: ../IkiWiki/Plugin/img.pm:191
#, fuzzy, perl-format
msgid "failed to get dimensions of %s"
msgstr "грешка при запис на файла „%s”: %s"
-#: ../IkiWiki/Plugin/img.pm:191
+#: ../IkiWiki/Plugin/img.pm:198
#, perl-format
msgid "wrong size format \"%s\" (should be WxH)"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:227
+#: ../IkiWiki/Plugin/img.pm:234
#, fuzzy, perl-format
msgid "failed to resize: %s"
msgstr "грешка при запис на файла „%s”: %s"
-#: ../IkiWiki/Plugin/img.pm:252
+#: ../IkiWiki/Plugin/img.pm:259
#, fuzzy, perl-format
msgid "failed to determine size of image %s"
msgstr "грешка при запис на файла „%s”: %s"
msgid "multimarkdown is enabled, but Text::MultiMarkdown is not installed"
msgstr ""
-#: ../IkiWiki/Plugin/mdwn.pm:150
+#: ../IkiWiki/Plugin/mdwn.pm:175
#, perl-format
msgid "failed to load Markdown.pm perl module (%s) or /usr/bin/markdown (%s)"
msgstr ""
msgid "preprocessing loop detected on %s at depth %i"
msgstr "открита е циклична завидимост при %s на „%s” на дълбочина %i"
-#: ../IkiWiki.pm:1848
+#: ../IkiWiki.pm:1852
#, fuzzy, perl-format
msgid "bad file name %s"
msgstr "пропускане на невалидното име на файл „%s”"
-#: ../IkiWiki.pm:2161
+#: ../IkiWiki.pm:2165
#, perl-format
msgid "template %s not found"
msgstr "шаблонът „%s” не е намерен"
-#: ../IkiWiki.pm:2419
+#: ../IkiWiki.pm:2423
msgid "yes"
msgstr ""
-#: ../IkiWiki.pm:2504
+#: ../IkiWiki.pm:2508
#, fuzzy, perl-format
msgid "invalid sort type %s"
msgstr "непознат вид сортиране „%s”"
-#: ../IkiWiki.pm:2525
+#: ../IkiWiki.pm:2529
#, perl-format
msgid "unknown sort type %s"
msgstr "непознат вид сортиране „%s”"
-#: ../IkiWiki.pm:2674
+#: ../IkiWiki.pm:2678
#, fuzzy, perl-format
msgid "cannot match pages: %s"
msgstr "грешка при четене на „%s”: %s"
msgstr ""
"Project-Id-Version: ikiwiki\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-01-05 12:22-0400\n"
+"POT-Creation-Date: 2018-02-28 10:39+0000\n"
"PO-Revision-Date: 2009-09-11 20:23+0200\n"
"Last-Translator: Miroslav Kure <kurem@debian.cz>\n"
"Language-Team: Czech <debian-l10n-czech@lists.debian.org>\n"
msgid "You are banned."
msgstr "Jste vyhoštěni."
-#: ../IkiWiki/CGI.pm:491 ../IkiWiki/CGI.pm:492 ../IkiWiki.pm:1672
+#: ../IkiWiki/CGI.pm:491 ../IkiWiki/CGI.pm:492 ../IkiWiki.pm:1676
msgid "Error"
msgstr "Chyba"
msgid "%s is an attachment, not a page."
msgstr "%s není ani příloha, ani stránka."
-#: ../IkiWiki/Plugin/git.pm:933 ../IkiWiki/Plugin/git.pm:997 ../IkiWiki.pm:1892
+#: ../IkiWiki/Plugin/git.pm:933 ../IkiWiki/Plugin/git.pm:997 ../IkiWiki.pm:1896
#, perl-format
msgid "you are not allowed to change %s"
msgstr "nejste oprávněni měnit %s"
msgid "Unable to detect image type from extension"
msgstr "z kódu se nepodařilo vygenerovat obrázek"
-#: ../IkiWiki/Plugin/img.pm:104 ../IkiWiki/Plugin/img.pm:136
-#: ../IkiWiki/Plugin/img.pm:175 ../IkiWiki/Plugin/img.pm:223
+#: ../IkiWiki/Plugin/img.pm:104 ../IkiWiki/Plugin/img.pm:143
+#: ../IkiWiki/Plugin/img.pm:182 ../IkiWiki/Plugin/img.pm:230
#, perl-format
msgid "failed to read %s: %s"
msgstr "nelze číst %s: %s"
-#: ../IkiWiki/Plugin/img.pm:131
+#: ../IkiWiki/Plugin/img.pm:134
+#, fuzzy, perl-format
+msgid "failed to determine format of %s"
+msgstr "nelze určit velikost obrázku %s"
+
+#: ../IkiWiki/Plugin/img.pm:138
#, perl-format
msgid "%s image processing disabled in img_allowed_formats configuration"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:138
+#: ../IkiWiki/Plugin/img.pm:145
#, fuzzy, perl-format
msgid "\"%s\" does not seem to be a valid %s file"
msgstr "%s není spustitelný soubor"
-#: ../IkiWiki/Plugin/img.pm:172
+#: ../IkiWiki/Plugin/img.pm:179
msgid "Image::Magick is not installed"
msgstr "Image::Magick není nainstalován"
-#: ../IkiWiki/Plugin/img.pm:184
+#: ../IkiWiki/Plugin/img.pm:191
#, fuzzy, perl-format
msgid "failed to get dimensions of %s"
msgstr "nelze určit velikost obrázku %s"
-#: ../IkiWiki/Plugin/img.pm:191
+#: ../IkiWiki/Plugin/img.pm:198
#, perl-format
msgid "wrong size format \"%s\" (should be WxH)"
msgstr "chybné rozměry „%s“ (formát má být ŠxV)"
-#: ../IkiWiki/Plugin/img.pm:227
+#: ../IkiWiki/Plugin/img.pm:234
#, perl-format
msgid "failed to resize: %s"
msgstr "nelze změnit velikost: %s"
-#: ../IkiWiki/Plugin/img.pm:252
+#: ../IkiWiki/Plugin/img.pm:259
#, perl-format
msgid "failed to determine size of image %s"
msgstr "nelze určit velikost obrázku %s"
msgid "multimarkdown is enabled, but Text::MultiMarkdown is not installed"
msgstr "je povolen multimarkdown, ale Text::MultiMarkdown není nainstalován"
-#: ../IkiWiki/Plugin/mdwn.pm:150
+#: ../IkiWiki/Plugin/mdwn.pm:175
#, perl-format
msgid "failed to load Markdown.pm perl module (%s) or /usr/bin/markdown (%s)"
msgstr ""
msgid "preprocessing loop detected on %s at depth %i"
msgstr "Byla rozpoznána smyčka na %s v hloubce %i"
-#: ../IkiWiki.pm:1848
+#: ../IkiWiki.pm:1852
#, perl-format
msgid "bad file name %s"
msgstr "chybné jméno souboru %s"
-#: ../IkiWiki.pm:2161
+#: ../IkiWiki.pm:2165
#, perl-format
msgid "template %s not found"
msgstr "šablona %s nebyla nalezena"
-#: ../IkiWiki.pm:2419
+#: ../IkiWiki.pm:2423
msgid "yes"
msgstr "ano"
-#: ../IkiWiki.pm:2504
+#: ../IkiWiki.pm:2508
#, fuzzy, perl-format
msgid "invalid sort type %s"
msgstr "neznámý typ řazení %s"
-#: ../IkiWiki.pm:2525
+#: ../IkiWiki.pm:2529
#, perl-format
msgid "unknown sort type %s"
msgstr "neznámý typ řazení %s"
-#: ../IkiWiki.pm:2674
+#: ../IkiWiki.pm:2678
#, perl-format
msgid "cannot match pages: %s"
msgstr "nelze vybrat stránky: %s"
msgstr ""
"Project-Id-Version: ikiwiki 3.20110430\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-01-05 12:22-0400\n"
+"POT-Creation-Date: 2018-02-28 10:39+0000\n"
"PO-Revision-Date: 2011-05-05 13:30+0200\n"
"Last-Translator: Jonas Smedegaard <dr@jones.dk>\n"
"Language-Team: None\n"
msgid "You are banned."
msgstr "Du er banlyst."
-#: ../IkiWiki/CGI.pm:491 ../IkiWiki/CGI.pm:492 ../IkiWiki.pm:1672
+#: ../IkiWiki/CGI.pm:491 ../IkiWiki/CGI.pm:492 ../IkiWiki.pm:1676
msgid "Error"
msgstr "Fejl"
msgid "%s is an attachment, not a page."
msgstr "%s er en vedhæftning, ikke en side."
-#: ../IkiWiki/Plugin/git.pm:933 ../IkiWiki/Plugin/git.pm:997 ../IkiWiki.pm:1892
+#: ../IkiWiki/Plugin/git.pm:933 ../IkiWiki/Plugin/git.pm:997 ../IkiWiki.pm:1896
#, perl-format
msgid "you are not allowed to change %s"
msgstr "Du har ikke lov til at ændre %s"
msgid "Unable to detect image type from extension"
msgstr "billedopbygning fra kode mislykkedes"
-#: ../IkiWiki/Plugin/img.pm:104 ../IkiWiki/Plugin/img.pm:136
-#: ../IkiWiki/Plugin/img.pm:175 ../IkiWiki/Plugin/img.pm:223
+#: ../IkiWiki/Plugin/img.pm:104 ../IkiWiki/Plugin/img.pm:143
+#: ../IkiWiki/Plugin/img.pm:182 ../IkiWiki/Plugin/img.pm:230
#, perl-format
msgid "failed to read %s: %s"
msgstr "læsning af %s mislykkedes: %s"
-#: ../IkiWiki/Plugin/img.pm:131
+#: ../IkiWiki/Plugin/img.pm:134
+#, fuzzy, perl-format
+msgid "failed to determine format of %s"
+msgstr "Vurdering af billedstørrelse mislykkedes: %s"
+
+#: ../IkiWiki/Plugin/img.pm:138
#, perl-format
msgid "%s image processing disabled in img_allowed_formats configuration"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:138
+#: ../IkiWiki/Plugin/img.pm:145
#, fuzzy, perl-format
msgid "\"%s\" does not seem to be a valid %s file"
msgstr "%s ser ikke ud til at kunne afvikles"
-#: ../IkiWiki/Plugin/img.pm:172
+#: ../IkiWiki/Plugin/img.pm:179
msgid "Image::Magick is not installed"
msgstr "Image::Magick ikke installeret"
-#: ../IkiWiki/Plugin/img.pm:184
+#: ../IkiWiki/Plugin/img.pm:191
#, fuzzy, perl-format
msgid "failed to get dimensions of %s"
msgstr "Vurdering af billedstørrelse mislykkedes: %s"
-#: ../IkiWiki/Plugin/img.pm:191
+#: ../IkiWiki/Plugin/img.pm:198
#, perl-format
msgid "wrong size format \"%s\" (should be WxH)"
msgstr "forkert størrelsesformat \"%s\" (burde være WxH)"
-#: ../IkiWiki/Plugin/img.pm:227
+#: ../IkiWiki/Plugin/img.pm:234
#, perl-format
msgid "failed to resize: %s"
msgstr "Ændring af størrelse mislykkedes: %s"
-#: ../IkiWiki/Plugin/img.pm:252
+#: ../IkiWiki/Plugin/img.pm:259
#, perl-format
msgid "failed to determine size of image %s"
msgstr "Vurdering af billedstørrelse mislykkedes: %s"
msgstr ""
"multimarkdown er aktiveret, men Text::MultiMarkdown er ikke installeret"
-#: ../IkiWiki/Plugin/mdwn.pm:150
+#: ../IkiWiki/Plugin/mdwn.pm:175
#, perl-format
msgid "failed to load Markdown.pm perl module (%s) or /usr/bin/markdown (%s)"
msgstr ""
msgid "preprocessing loop detected on %s at depth %i"
msgstr "forudberegningssløkke fundet på %s ved dybde %i"
-#: ../IkiWiki.pm:1848
+#: ../IkiWiki.pm:1852
#, perl-format
msgid "bad file name %s"
msgstr "dårligt filnavn %s"
-#: ../IkiWiki.pm:2161
+#: ../IkiWiki.pm:2165
#, perl-format
msgid "template %s not found"
msgstr "skabelon %s ikke fundet"
-#: ../IkiWiki.pm:2419
+#: ../IkiWiki.pm:2423
msgid "yes"
msgstr "ja"
-#: ../IkiWiki.pm:2504
+#: ../IkiWiki.pm:2508
#, perl-format
msgid "invalid sort type %s"
msgstr "forkert sorteringstype %s"
-#: ../IkiWiki.pm:2525
+#: ../IkiWiki.pm:2529
#, perl-format
msgid "unknown sort type %s"
msgstr "ukendt sorteringsform %s"
-#: ../IkiWiki.pm:2674
+#: ../IkiWiki.pm:2678
#, perl-format
msgid "cannot match pages: %s"
msgstr "kan ikke få sider til at passe sammen: %s"
msgstr ""
"Project-Id-Version: ikiwiki 3.14159\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-01-05 12:22-0400\n"
+"POT-Creation-Date: 2018-02-28 10:39+0000\n"
"PO-Revision-Date: 2010-03-14 16:09+0530\n"
"Last-Translator: Sebastian Kuhnert <mail@sebastian-kuhnert.de>\n"
"Language-Team: German <debian-l10n-german@lists.debian.org>\n"
msgid "You are banned."
msgstr "Sie sind ausgeschlossen worden."
-#: ../IkiWiki/CGI.pm:491 ../IkiWiki/CGI.pm:492 ../IkiWiki.pm:1672
+#: ../IkiWiki/CGI.pm:491 ../IkiWiki/CGI.pm:492 ../IkiWiki.pm:1676
msgid "Error"
msgstr "Fehler"
msgid "%s is an attachment, not a page."
msgstr "Seite %s ist ein Anhang und keine Seite."
-#: ../IkiWiki/Plugin/git.pm:933 ../IkiWiki/Plugin/git.pm:997 ../IkiWiki.pm:1892
+#: ../IkiWiki/Plugin/git.pm:933 ../IkiWiki/Plugin/git.pm:997 ../IkiWiki.pm:1896
#, perl-format
msgid "you are not allowed to change %s"
msgstr "Sie dürfen %s nicht verändern"
msgid "Unable to detect image type from extension"
msgstr "konnte kein Bild aus dem Code erzeugen"
-#: ../IkiWiki/Plugin/img.pm:104 ../IkiWiki/Plugin/img.pm:136
-#: ../IkiWiki/Plugin/img.pm:175 ../IkiWiki/Plugin/img.pm:223
+#: ../IkiWiki/Plugin/img.pm:104 ../IkiWiki/Plugin/img.pm:143
+#: ../IkiWiki/Plugin/img.pm:182 ../IkiWiki/Plugin/img.pm:230
#, perl-format
msgid "failed to read %s: %s"
msgstr "Lesen von %s fehlgeschlagen: %s"
-#: ../IkiWiki/Plugin/img.pm:131
+#: ../IkiWiki/Plugin/img.pm:134
+#, fuzzy, perl-format
+msgid "failed to determine format of %s"
+msgstr "Größe des Bildes %s konnte nicht festgestellt werden."
+
+#: ../IkiWiki/Plugin/img.pm:138
#, perl-format
msgid "%s image processing disabled in img_allowed_formats configuration"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:138
+#: ../IkiWiki/Plugin/img.pm:145
#, fuzzy, perl-format
msgid "\"%s\" does not seem to be a valid %s file"
msgstr "%s scheint nicht ausführbar zu sein"
-#: ../IkiWiki/Plugin/img.pm:172
+#: ../IkiWiki/Plugin/img.pm:179
msgid "Image::Magick is not installed"
msgstr "Image::Magick ist nicht installiert"
-#: ../IkiWiki/Plugin/img.pm:184
+#: ../IkiWiki/Plugin/img.pm:191
#, fuzzy, perl-format
msgid "failed to get dimensions of %s"
msgstr "Größe des Bildes %s konnte nicht festgestellt werden."
-#: ../IkiWiki/Plugin/img.pm:191
+#: ../IkiWiki/Plugin/img.pm:198
#, perl-format
msgid "wrong size format \"%s\" (should be WxH)"
msgstr "falsches Format in \"%s\" für size (sollte BxH sein)"
-#: ../IkiWiki/Plugin/img.pm:227
+#: ../IkiWiki/Plugin/img.pm:234
#, perl-format
msgid "failed to resize: %s"
msgstr "Größenänderung fehlgeschlagen: %s"
-#: ../IkiWiki/Plugin/img.pm:252
+#: ../IkiWiki/Plugin/img.pm:259
#, perl-format
msgid "failed to determine size of image %s"
msgstr "Größe des Bildes %s konnte nicht festgestellt werden."
"multimarkdown ist eingeschaltet, aber Text::MultiMarkdown ist nicht "
"installiert"
-#: ../IkiWiki/Plugin/mdwn.pm:150
+#: ../IkiWiki/Plugin/mdwn.pm:175
#, perl-format
msgid "failed to load Markdown.pm perl module (%s) or /usr/bin/markdown (%s)"
msgstr ""
msgid "preprocessing loop detected on %s at depth %i"
msgstr "Präprozessorschleife auf %s in Tiefe %i erkannt"
-#: ../IkiWiki.pm:1848
+#: ../IkiWiki.pm:1852
#, perl-format
msgid "bad file name %s"
msgstr "fehlerhafter Dateiname %s"
-#: ../IkiWiki.pm:2161
+#: ../IkiWiki.pm:2165
#, perl-format
msgid "template %s not found"
msgstr "Vorlage %s nicht gefunden"
-#: ../IkiWiki.pm:2419
+#: ../IkiWiki.pm:2423
msgid "yes"
msgstr "ja"
-#: ../IkiWiki.pm:2504
+#: ../IkiWiki.pm:2508
#, fuzzy, perl-format
msgid "invalid sort type %s"
msgstr "Unbekannter Sortierungstyp %s"
-#: ../IkiWiki.pm:2525
+#: ../IkiWiki.pm:2529
#, perl-format
msgid "unknown sort type %s"
msgstr "Unbekannter Sortierungstyp %s"
-#: ../IkiWiki.pm:2674
+#: ../IkiWiki.pm:2678
#, perl-format
msgid "cannot match pages: %s"
msgstr "Kann die Seiten nicht zuordnen: %s"
msgstr ""
"Project-Id-Version: es\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-01-05 12:22-0400\n"
+"POT-Creation-Date: 2018-02-28 10:39+0000\n"
"PO-Revision-Date: 2009-06-14 12:32+0200\n"
"Last-Translator: Victor Moral <victor@taquiones.net>\n"
"Language-Team: <en@li.org>\n"
msgid "You are banned."
msgstr "Ha sido expulsado."
-#: ../IkiWiki/CGI.pm:491 ../IkiWiki/CGI.pm:492 ../IkiWiki.pm:1672
+#: ../IkiWiki/CGI.pm:491 ../IkiWiki/CGI.pm:492 ../IkiWiki.pm:1676
msgid "Error"
msgstr "Error"
msgid "%s is an attachment, not a page."
msgstr "la página %s no es modificable"
-#: ../IkiWiki/Plugin/git.pm:933 ../IkiWiki/Plugin/git.pm:997 ../IkiWiki.pm:1892
+#: ../IkiWiki/Plugin/git.pm:933 ../IkiWiki/Plugin/git.pm:997 ../IkiWiki.pm:1896
#, perl-format
msgid "you are not allowed to change %s"
msgstr "No puede cambiar %s"
msgid "Unable to detect image type from extension"
msgstr "no he podido crear la imagen desde el código"
-#: ../IkiWiki/Plugin/img.pm:104 ../IkiWiki/Plugin/img.pm:136
-#: ../IkiWiki/Plugin/img.pm:175 ../IkiWiki/Plugin/img.pm:223
+#: ../IkiWiki/Plugin/img.pm:104 ../IkiWiki/Plugin/img.pm:143
+#: ../IkiWiki/Plugin/img.pm:182 ../IkiWiki/Plugin/img.pm:230
#, perl-format
msgid "failed to read %s: %s"
msgstr "no puedo leer de %s: %s "
-#: ../IkiWiki/Plugin/img.pm:131
+#: ../IkiWiki/Plugin/img.pm:134
+#, fuzzy, perl-format
+msgid "failed to determine format of %s"
+msgstr "no he podido determinar el tamaño de la imagen %s"
+
+#: ../IkiWiki/Plugin/img.pm:138
#, perl-format
msgid "%s image processing disabled in img_allowed_formats configuration"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:138
+#: ../IkiWiki/Plugin/img.pm:145
#, fuzzy, perl-format
msgid "\"%s\" does not seem to be a valid %s file"
msgstr "el programa %s no parece ser ejecutable"
-#: ../IkiWiki/Plugin/img.pm:172
+#: ../IkiWiki/Plugin/img.pm:179
msgid "Image::Magick is not installed"
msgstr "El complemento Image::Magick no ha sido instalado"
-#: ../IkiWiki/Plugin/img.pm:184
+#: ../IkiWiki/Plugin/img.pm:191
#, fuzzy, perl-format
msgid "failed to get dimensions of %s"
msgstr "no he podido determinar el tamaño de la imagen %s"
-#: ../IkiWiki/Plugin/img.pm:191
+#: ../IkiWiki/Plugin/img.pm:198
#, perl-format
msgid "wrong size format \"%s\" (should be WxH)"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:227
+#: ../IkiWiki/Plugin/img.pm:234
#, perl-format
msgid "failed to resize: %s"
msgstr "dimensionamiento fallido: %s"
-#: ../IkiWiki/Plugin/img.pm:252
+#: ../IkiWiki/Plugin/img.pm:259
#, perl-format
msgid "failed to determine size of image %s"
msgstr "no he podido determinar el tamaño de la imagen %s"
msgstr ""
"el modo multimarkdown está activo, pero no está instalado Text::MultiMarkdown"
-#: ../IkiWiki/Plugin/mdwn.pm:150
+#: ../IkiWiki/Plugin/mdwn.pm:175
#, perl-format
msgid "failed to load Markdown.pm perl module (%s) or /usr/bin/markdown (%s)"
msgstr ""
"se ha detectado en la página %s un bucle de preprocesado en la iteración "
"número %i"
-#: ../IkiWiki.pm:1848
+#: ../IkiWiki.pm:1852
#, perl-format
msgid "bad file name %s"
msgstr "el nombre de archivo %s es erróneo"
-#: ../IkiWiki.pm:2161
+#: ../IkiWiki.pm:2165
#, perl-format
msgid "template %s not found"
msgstr "no he encontrado la plantilla %s"
-#: ../IkiWiki.pm:2419
+#: ../IkiWiki.pm:2423
msgid "yes"
msgstr "si"
-#: ../IkiWiki.pm:2504
+#: ../IkiWiki.pm:2508
#, fuzzy, perl-format
msgid "invalid sort type %s"
msgstr "no conozco este tipo de ordenación %s"
-#: ../IkiWiki.pm:2525
+#: ../IkiWiki.pm:2529
#, perl-format
msgid "unknown sort type %s"
msgstr "no conozco este tipo de ordenación %s"
-#: ../IkiWiki.pm:2674
+#: ../IkiWiki.pm:2678
#, perl-format
msgid "cannot match pages: %s"
msgstr "no encuentro páginas coincidentes: %s"
msgstr ""
"Project-Id-Version: ikiwiki 3.141\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-01-05 12:22-0400\n"
+"POT-Creation-Date: 2018-02-28 10:39+0000\n"
"PO-Revision-Date: 2010-10-03 10:42+0200\n"
"Last-Translator: Philippe Batailler <philippe.batailler@free.fr>\n"
"Language-Team: French <debian-l10n-french@lists.debian.org>\n"
msgid "You are banned."
msgstr "Vous avez été banni."
-#: ../IkiWiki/CGI.pm:491 ../IkiWiki/CGI.pm:492 ../IkiWiki.pm:1672
+#: ../IkiWiki/CGI.pm:491 ../IkiWiki/CGI.pm:492 ../IkiWiki.pm:1676
msgid "Error"
msgstr "Erreur"
msgid "%s is an attachment, not a page."
msgstr "%s est une pièce jointe, pas une page."
-#: ../IkiWiki/Plugin/git.pm:933 ../IkiWiki/Plugin/git.pm:997 ../IkiWiki.pm:1892
+#: ../IkiWiki/Plugin/git.pm:933 ../IkiWiki/Plugin/git.pm:997 ../IkiWiki.pm:1896
#, perl-format
msgid "you are not allowed to change %s"
msgstr "Vous n'êtes pas autorisé à modifier %s"
msgid "Unable to detect image type from extension"
msgstr "Échec de la création de l'image à partir du code"
-#: ../IkiWiki/Plugin/img.pm:104 ../IkiWiki/Plugin/img.pm:136
-#: ../IkiWiki/Plugin/img.pm:175 ../IkiWiki/Plugin/img.pm:223
+#: ../IkiWiki/Plugin/img.pm:104 ../IkiWiki/Plugin/img.pm:143
+#: ../IkiWiki/Plugin/img.pm:182 ../IkiWiki/Plugin/img.pm:230
#, perl-format
msgid "failed to read %s: %s"
msgstr "Échec de la lecture de %s : %s"
-#: ../IkiWiki/Plugin/img.pm:131
+#: ../IkiWiki/Plugin/img.pm:134
+#, fuzzy, perl-format
+msgid "failed to determine format of %s"
+msgstr "Échec de la détermination de la taille de l'image : %s"
+
+#: ../IkiWiki/Plugin/img.pm:138
#, perl-format
msgid "%s image processing disabled in img_allowed_formats configuration"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:138
+#: ../IkiWiki/Plugin/img.pm:145
#, fuzzy, perl-format
msgid "\"%s\" does not seem to be a valid %s file"
msgstr "%s ne semble pas être exécutable"
-#: ../IkiWiki/Plugin/img.pm:172
+#: ../IkiWiki/Plugin/img.pm:179
msgid "Image::Magick is not installed"
msgstr "Image::Magick n'est pas installé"
-#: ../IkiWiki/Plugin/img.pm:184
+#: ../IkiWiki/Plugin/img.pm:191
#, fuzzy, perl-format
msgid "failed to get dimensions of %s"
msgstr "Échec de la détermination de la taille de l'image : %s"
-#: ../IkiWiki/Plugin/img.pm:191
+#: ../IkiWiki/Plugin/img.pm:198
#, perl-format
msgid "wrong size format \"%s\" (should be WxH)"
msgstr "Format de la taille incorrect \"%s\", (devrait être LxH)"
-#: ../IkiWiki/Plugin/img.pm:227
+#: ../IkiWiki/Plugin/img.pm:234
#, perl-format
msgid "failed to resize: %s"
msgstr "Échec du redimensionnement : %s"
-#: ../IkiWiki/Plugin/img.pm:252
+#: ../IkiWiki/Plugin/img.pm:259
#, perl-format
msgid "failed to determine size of image %s"
msgstr "Échec de la détermination de la taille de l'image : %s"
msgid "multimarkdown is enabled, but Text::MultiMarkdown is not installed"
msgstr "mulitmarkdown est activé mais Text::Multimarkdown n'est pas installé"
-#: ../IkiWiki/Plugin/mdwn.pm:150
+#: ../IkiWiki/Plugin/mdwn.pm:175
#, perl-format
msgid "failed to load Markdown.pm perl module (%s) or /usr/bin/markdown (%s)"
msgstr ""
msgid "preprocessing loop detected on %s at depth %i"
msgstr "Une boucle de prétraitement a été détectée sur %s à hauteur de %i"
-#: ../IkiWiki.pm:1848
+#: ../IkiWiki.pm:1852
#, perl-format
msgid "bad file name %s"
msgstr "Nom de fichier incorrect %s"
-#: ../IkiWiki.pm:2161
+#: ../IkiWiki.pm:2165
#, perl-format
msgid "template %s not found"
msgstr "Modèle de page %s introuvable"
-#: ../IkiWiki.pm:2419
+#: ../IkiWiki.pm:2423
msgid "yes"
msgstr "oui"
-#: ../IkiWiki.pm:2504
+#: ../IkiWiki.pm:2508
#, perl-format
msgid "invalid sort type %s"
msgstr "Type de tri %s inconnu"
-#: ../IkiWiki.pm:2525
+#: ../IkiWiki.pm:2529
#, perl-format
msgid "unknown sort type %s"
msgstr "Type de tri %s inconnu"
-#: ../IkiWiki.pm:2674
+#: ../IkiWiki.pm:2678
#, perl-format
msgid "cannot match pages: %s"
msgstr "Impossible de trouver les pages : %s"
msgstr ""
"Project-Id-Version: ikiwiki-gu\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-01-05 12:22-0400\n"
+"POT-Creation-Date: 2018-02-28 10:39+0000\n"
"PO-Revision-Date: 2007-01-11 16:05+0530\n"
"Last-Translator: Kartik Mistry <kartik.mistry@gmail.com>\n"
"Language-Team: Gujarati <team@utkarsh.org>\n"
msgid "You are banned."
msgstr "તમારા પર પ્રતિબંધ છે."
-#: ../IkiWiki/CGI.pm:491 ../IkiWiki/CGI.pm:492 ../IkiWiki.pm:1672
+#: ../IkiWiki/CGI.pm:491 ../IkiWiki/CGI.pm:492 ../IkiWiki.pm:1676
msgid "Error"
msgstr "ક્ષતિ"
msgid "%s is an attachment, not a page."
msgstr "%s એ સુધારી શકાય તેવું પાનું નથી"
-#: ../IkiWiki/Plugin/git.pm:933 ../IkiWiki/Plugin/git.pm:997 ../IkiWiki.pm:1892
+#: ../IkiWiki/Plugin/git.pm:933 ../IkiWiki/Plugin/git.pm:997 ../IkiWiki.pm:1896
#, perl-format
msgid "you are not allowed to change %s"
msgstr ""
msgid "Unable to detect image type from extension"
msgstr "માપ બદલવામાં નિષ્ફળ: %s"
-#: ../IkiWiki/Plugin/img.pm:104 ../IkiWiki/Plugin/img.pm:136
-#: ../IkiWiki/Plugin/img.pm:175 ../IkiWiki/Plugin/img.pm:223
+#: ../IkiWiki/Plugin/img.pm:104 ../IkiWiki/Plugin/img.pm:143
+#: ../IkiWiki/Plugin/img.pm:182 ../IkiWiki/Plugin/img.pm:230
#, perl-format
msgid "failed to read %s: %s"
msgstr "%s વાંચવામાં નિષ્ફળ: %s"
-#: ../IkiWiki/Plugin/img.pm:131
+#: ../IkiWiki/Plugin/img.pm:134
+#, fuzzy, perl-format
+msgid "failed to determine format of %s"
+msgstr "માપ બદલવામાં નિષ્ફળ: %s"
+
+#: ../IkiWiki/Plugin/img.pm:138
#, perl-format
msgid "%s image processing disabled in img_allowed_formats configuration"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:138
+#: ../IkiWiki/Plugin/img.pm:145
#, fuzzy, perl-format
msgid "\"%s\" does not seem to be a valid %s file"
msgstr "%s એ ચલાવી શકાય તેમ લાગતું નથી"
-#: ../IkiWiki/Plugin/img.pm:172
+#: ../IkiWiki/Plugin/img.pm:179
#, fuzzy
msgid "Image::Magick is not installed"
msgstr "પોલિગોન સ્થાપિત નથી"
-#: ../IkiWiki/Plugin/img.pm:184
+#: ../IkiWiki/Plugin/img.pm:191
#, fuzzy, perl-format
msgid "failed to get dimensions of %s"
msgstr "માપ બદલવામાં નિષ્ફળ: %s"
-#: ../IkiWiki/Plugin/img.pm:191
+#: ../IkiWiki/Plugin/img.pm:198
#, perl-format
msgid "wrong size format \"%s\" (should be WxH)"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:227
+#: ../IkiWiki/Plugin/img.pm:234
#, perl-format
msgid "failed to resize: %s"
msgstr "માપ બદલવામાં નિષ્ફળ: %s"
-#: ../IkiWiki/Plugin/img.pm:252
+#: ../IkiWiki/Plugin/img.pm:259
#, fuzzy, perl-format
msgid "failed to determine size of image %s"
msgstr "માપ બદલવામાં નિષ્ફળ: %s"
msgid "multimarkdown is enabled, but Text::MultiMarkdown is not installed"
msgstr ""
-#: ../IkiWiki/Plugin/mdwn.pm:150
+#: ../IkiWiki/Plugin/mdwn.pm:175
#, perl-format
msgid "failed to load Markdown.pm perl module (%s) or /usr/bin/markdown (%s)"
msgstr "Markdown.pm પર્લ મોડ્યુલ (%s) અથવા /usr/bin/markdown (%s) લાવવામાં નિષ્ફળ"
msgid "preprocessing loop detected on %s at depth %i"
msgstr "%s પર શોધાયેલ લુપ %s પર ચલાવે છે %i ઉંડાણ પર"
-#: ../IkiWiki.pm:1848
+#: ../IkiWiki.pm:1852
#, fuzzy, perl-format
msgid "bad file name %s"
msgstr "ખરાબ ફાઇલ નામ છોડી દે છે %s"
-#: ../IkiWiki.pm:2161
+#: ../IkiWiki.pm:2165
#, perl-format
msgid "template %s not found"
msgstr "ટેમ્પલેટ %s મળ્યું નહી"
-#: ../IkiWiki.pm:2419
+#: ../IkiWiki.pm:2423
msgid "yes"
msgstr ""
-#: ../IkiWiki.pm:2504
+#: ../IkiWiki.pm:2508
#, fuzzy, perl-format
msgid "invalid sort type %s"
msgstr "અજાણ્યો ગોઠવણી પ્રકાર %s"
-#: ../IkiWiki.pm:2525
+#: ../IkiWiki.pm:2529
#, perl-format
msgid "unknown sort type %s"
msgstr "અજાણ્યો ગોઠવણી પ્રકાર %s"
-#: ../IkiWiki.pm:2674
+#: ../IkiWiki.pm:2678
#, fuzzy, perl-format
msgid "cannot match pages: %s"
msgstr "વાંચી શકાતી નથી %s: %s"
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-01-05 12:26-0400\n"
+"POT-Creation-Date: 2018-02-28 10:40+0000\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"
msgid "You are banned."
msgstr ""
-#: ../IkiWiki/CGI.pm:491 ../IkiWiki/CGI.pm:492 ../IkiWiki.pm:1672
+#: ../IkiWiki/CGI.pm:491 ../IkiWiki/CGI.pm:492 ../IkiWiki.pm:1676
msgid "Error"
msgstr ""
msgid "%s is an attachment, not a page."
msgstr ""
-#: ../IkiWiki/Plugin/git.pm:933 ../IkiWiki/Plugin/git.pm:997 ../IkiWiki.pm:1892
+#: ../IkiWiki/Plugin/git.pm:933 ../IkiWiki/Plugin/git.pm:997 ../IkiWiki.pm:1896
#, perl-format
msgid "you are not allowed to change %s"
msgstr ""
msgid "Unable to detect image type from extension"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:104 ../IkiWiki/Plugin/img.pm:136
-#: ../IkiWiki/Plugin/img.pm:175 ../IkiWiki/Plugin/img.pm:223
+#: ../IkiWiki/Plugin/img.pm:104 ../IkiWiki/Plugin/img.pm:143
+#: ../IkiWiki/Plugin/img.pm:182 ../IkiWiki/Plugin/img.pm:230
#, perl-format
msgid "failed to read %s: %s"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:131
+#: ../IkiWiki/Plugin/img.pm:134
#, perl-format
-msgid "%s image processing disabled in img_allowed_formats configuration"
+msgid "failed to determine format of %s"
msgstr ""
#: ../IkiWiki/Plugin/img.pm:138
#, perl-format
+msgid "%s image processing disabled in img_allowed_formats configuration"
+msgstr ""
+
+#: ../IkiWiki/Plugin/img.pm:145
+#, perl-format
msgid "\"%s\" does not seem to be a valid %s file"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:172
+#: ../IkiWiki/Plugin/img.pm:179
msgid "Image::Magick is not installed"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:184
+#: ../IkiWiki/Plugin/img.pm:191
#, perl-format
msgid "failed to get dimensions of %s"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:191
+#: ../IkiWiki/Plugin/img.pm:198
#, perl-format
msgid "wrong size format \"%s\" (should be WxH)"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:227
+#: ../IkiWiki/Plugin/img.pm:234
#, perl-format
msgid "failed to resize: %s"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:252
+#: ../IkiWiki/Plugin/img.pm:259
#, perl-format
msgid "failed to determine size of image %s"
msgstr ""
msgid "multimarkdown is enabled, but Text::MultiMarkdown is not installed"
msgstr ""
-#: ../IkiWiki/Plugin/mdwn.pm:150
+#: ../IkiWiki/Plugin/mdwn.pm:175
#, perl-format
msgid "failed to load Markdown.pm perl module (%s) or /usr/bin/markdown (%s)"
msgstr ""
msgid "preprocessing loop detected on %s at depth %i"
msgstr ""
-#: ../IkiWiki.pm:1848
+#: ../IkiWiki.pm:1852
#, perl-format
msgid "bad file name %s"
msgstr ""
-#: ../IkiWiki.pm:2161
+#: ../IkiWiki.pm:2165
#, perl-format
msgid "template %s not found"
msgstr ""
-#: ../IkiWiki.pm:2419
+#: ../IkiWiki.pm:2423
msgid "yes"
msgstr ""
-#: ../IkiWiki.pm:2504
+#: ../IkiWiki.pm:2508
#, perl-format
msgid "invalid sort type %s"
msgstr ""
-#: ../IkiWiki.pm:2525
+#: ../IkiWiki.pm:2529
#, perl-format
msgid "unknown sort type %s"
msgstr ""
-#: ../IkiWiki.pm:2674
+#: ../IkiWiki.pm:2678
#, perl-format
msgid "cannot match pages: %s"
msgstr ""
msgstr ""
"Project-Id-Version: Ikiwiki\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-01-05 12:22-0400\n"
+"POT-Creation-Date: 2018-02-28 10:39+0000\n"
"PO-Revision-Date: 2009-08-16 11:01+0100\n"
"Last-Translator: Luca Bruno <lucab@debian.org>\n"
"Language-Team: Italian TP <tp@lists.linux.it>\n"
msgid "You are banned."
msgstr "Avete ricevuto un ban."
-#: ../IkiWiki/CGI.pm:491 ../IkiWiki/CGI.pm:492 ../IkiWiki.pm:1672
+#: ../IkiWiki/CGI.pm:491 ../IkiWiki/CGI.pm:492 ../IkiWiki.pm:1676
msgid "Error"
msgstr "Errore"
msgid "%s is an attachment, not a page."
msgstr "%s è un allegato, non una pagina."
-#: ../IkiWiki/Plugin/git.pm:933 ../IkiWiki/Plugin/git.pm:997 ../IkiWiki.pm:1892
+#: ../IkiWiki/Plugin/git.pm:933 ../IkiWiki/Plugin/git.pm:997 ../IkiWiki.pm:1896
#, perl-format
msgid "you are not allowed to change %s"
msgstr "non è permesso modificare %s"
msgid "Unable to detect image type from extension"
msgstr "impossibile generare l'immagine dal codice"
-#: ../IkiWiki/Plugin/img.pm:104 ../IkiWiki/Plugin/img.pm:136
-#: ../IkiWiki/Plugin/img.pm:175 ../IkiWiki/Plugin/img.pm:223
+#: ../IkiWiki/Plugin/img.pm:104 ../IkiWiki/Plugin/img.pm:143
+#: ../IkiWiki/Plugin/img.pm:182 ../IkiWiki/Plugin/img.pm:230
#, perl-format
msgid "failed to read %s: %s"
msgstr "impossibile leggere %s: %s"
-#: ../IkiWiki/Plugin/img.pm:131
+#: ../IkiWiki/Plugin/img.pm:134
+#, fuzzy, perl-format
+msgid "failed to determine format of %s"
+msgstr "impossibile determinare la dimensione dell'immagine %s"
+
+#: ../IkiWiki/Plugin/img.pm:138
#, perl-format
msgid "%s image processing disabled in img_allowed_formats configuration"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:138
+#: ../IkiWiki/Plugin/img.pm:145
#, fuzzy, perl-format
msgid "\"%s\" does not seem to be a valid %s file"
msgstr "%s non sembra essere eseguibile"
-#: ../IkiWiki/Plugin/img.pm:172
+#: ../IkiWiki/Plugin/img.pm:179
msgid "Image::Magick is not installed"
msgstr "Image::Magick non è installato"
-#: ../IkiWiki/Plugin/img.pm:184
+#: ../IkiWiki/Plugin/img.pm:191
#, fuzzy, perl-format
msgid "failed to get dimensions of %s"
msgstr "impossibile determinare la dimensione dell'immagine %s"
-#: ../IkiWiki/Plugin/img.pm:191
+#: ../IkiWiki/Plugin/img.pm:198
#, perl-format
msgid "wrong size format \"%s\" (should be WxH)"
msgstr "Formato dimensione «%s» non valido (dovrebbe essere LxA)"
-#: ../IkiWiki/Plugin/img.pm:227
+#: ../IkiWiki/Plugin/img.pm:234
#, perl-format
msgid "failed to resize: %s"
msgstr "impossibile ridimensionare: %s"
-#: ../IkiWiki/Plugin/img.pm:252
+#: ../IkiWiki/Plugin/img.pm:259
#, perl-format
msgid "failed to determine size of image %s"
msgstr "impossibile determinare la dimensione dell'immagine %s"
msgstr ""
"multimarkdown è stato abilitato, ma Text::MultiMarkdown non è aggiornato"
-#: ../IkiWiki/Plugin/mdwn.pm:150
+#: ../IkiWiki/Plugin/mdwn.pm:175
#, perl-format
msgid "failed to load Markdown.pm perl module (%s) or /usr/bin/markdown (%s)"
msgstr ""
msgid "preprocessing loop detected on %s at depth %i"
msgstr "ciclo del preprocessore individuato su %s alla profondità %i"
-#: ../IkiWiki.pm:1848
+#: ../IkiWiki.pm:1852
#, perl-format
msgid "bad file name %s"
msgstr "nome file %s scorretto"
-#: ../IkiWiki.pm:2161
+#: ../IkiWiki.pm:2165
#, perl-format
msgid "template %s not found"
msgstr "modello %s non trovato"
-#: ../IkiWiki.pm:2419
+#: ../IkiWiki.pm:2423
msgid "yes"
msgstr "sì"
-#: ../IkiWiki.pm:2504
+#: ../IkiWiki.pm:2508
#, fuzzy, perl-format
msgid "invalid sort type %s"
msgstr "ordinamento %s sconosciuto"
-#: ../IkiWiki.pm:2525
+#: ../IkiWiki.pm:2529
#, perl-format
msgid "unknown sort type %s"
msgstr "ordinamento %s sconosciuto"
-#: ../IkiWiki.pm:2674
+#: ../IkiWiki.pm:2678
#, perl-format
msgid "cannot match pages: %s"
msgstr "impossibile trovare pagine corrispondenti: %s"
msgstr ""
"Project-Id-Version: ikiwiki 1.51\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-01-05 12:22-0400\n"
+"POT-Creation-Date: 2018-02-28 10:39+0000\n"
"PO-Revision-Date: 2007-04-27 22:05+0200\n"
"Last-Translator: Pawel Tecza <ptecza@net.icm.edu.pl>\n"
"Language-Team: Debian L10n Polish <debian-l10n-polish@lists.debian.org>\n"
msgid "You are banned."
msgstr "Twój dostęp został zabroniony przez administratora."
-#: ../IkiWiki/CGI.pm:491 ../IkiWiki/CGI.pm:492 ../IkiWiki.pm:1672
+#: ../IkiWiki/CGI.pm:491 ../IkiWiki/CGI.pm:492 ../IkiWiki.pm:1676
msgid "Error"
msgstr "Błąd"
msgid "%s is an attachment, not a page."
msgstr "Strona %s nie może być edytowana"
-#: ../IkiWiki/Plugin/git.pm:933 ../IkiWiki/Plugin/git.pm:997 ../IkiWiki.pm:1892
+#: ../IkiWiki/Plugin/git.pm:933 ../IkiWiki/Plugin/git.pm:997 ../IkiWiki.pm:1896
#, perl-format
msgid "you are not allowed to change %s"
msgstr ""
msgid "Unable to detect image type from extension"
msgstr "awaria w trakcie zmiany rozmiaru: %s"
-#: ../IkiWiki/Plugin/img.pm:104 ../IkiWiki/Plugin/img.pm:136
-#: ../IkiWiki/Plugin/img.pm:175 ../IkiWiki/Plugin/img.pm:223
+#: ../IkiWiki/Plugin/img.pm:104 ../IkiWiki/Plugin/img.pm:143
+#: ../IkiWiki/Plugin/img.pm:182 ../IkiWiki/Plugin/img.pm:230
#, fuzzy, perl-format
msgid "failed to read %s: %s"
msgstr "awaria w trakcie odczytu %s: %s"
-#: ../IkiWiki/Plugin/img.pm:131
+#: ../IkiWiki/Plugin/img.pm:134
+#, fuzzy, perl-format
+msgid "failed to determine format of %s"
+msgstr "awaria w trakcie zmiany rozmiaru: %s"
+
+#: ../IkiWiki/Plugin/img.pm:138
#, perl-format
msgid "%s image processing disabled in img_allowed_formats configuration"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:138
+#: ../IkiWiki/Plugin/img.pm:145
#, fuzzy, perl-format
msgid "\"%s\" does not seem to be a valid %s file"
msgstr "osłona %s nie jest wykonywalna"
-#: ../IkiWiki/Plugin/img.pm:172
+#: ../IkiWiki/Plugin/img.pm:179
#, fuzzy
msgid "Image::Magick is not installed"
msgstr "wtyczka polygen nie jest zainstalowana"
-#: ../IkiWiki/Plugin/img.pm:184
+#: ../IkiWiki/Plugin/img.pm:191
#, fuzzy, perl-format
msgid "failed to get dimensions of %s"
msgstr "awaria w trakcie zmiany rozmiaru: %s"
-#: ../IkiWiki/Plugin/img.pm:191
+#: ../IkiWiki/Plugin/img.pm:198
#, perl-format
msgid "wrong size format \"%s\" (should be WxH)"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:227
+#: ../IkiWiki/Plugin/img.pm:234
#, fuzzy, perl-format
msgid "failed to resize: %s"
msgstr "awaria w trakcie zmiany rozmiaru: %s"
-#: ../IkiWiki/Plugin/img.pm:252
+#: ../IkiWiki/Plugin/img.pm:259
#, fuzzy, perl-format
msgid "failed to determine size of image %s"
msgstr "awaria w trakcie zmiany rozmiaru: %s"
msgid "multimarkdown is enabled, but Text::MultiMarkdown is not installed"
msgstr ""
-#: ../IkiWiki/Plugin/mdwn.pm:150
+#: ../IkiWiki/Plugin/mdwn.pm:175
#, perl-format
msgid "failed to load Markdown.pm perl module (%s) or /usr/bin/markdown (%s)"
msgstr ""
msgid "preprocessing loop detected on %s at depth %i"
msgstr "polecenie preprocesora %s wykryte w %s na głębokości %i"
-#: ../IkiWiki.pm:1848
+#: ../IkiWiki.pm:1852
#, fuzzy, perl-format
msgid "bad file name %s"
msgstr "pomijanie nieprawidłowej nazwy pliku %s"
-#: ../IkiWiki.pm:2161
+#: ../IkiWiki.pm:2165
#, perl-format
msgid "template %s not found"
msgstr "nieznaleziony szablon %s"
-#: ../IkiWiki.pm:2419
+#: ../IkiWiki.pm:2423
msgid "yes"
msgstr ""
-#: ../IkiWiki.pm:2504
+#: ../IkiWiki.pm:2508
#, fuzzy, perl-format
msgid "invalid sort type %s"
msgstr "nieznany sposób sortowania %s"
-#: ../IkiWiki.pm:2525
+#: ../IkiWiki.pm:2529
#, perl-format
msgid "unknown sort type %s"
msgstr "nieznany sposób sortowania %s"
-#: ../IkiWiki.pm:2674
+#: ../IkiWiki.pm:2678
#, fuzzy, perl-format
msgid "cannot match pages: %s"
msgstr "awaria w trakcie odczytu %s: %s"
msgstr ""
"Project-Id-Version: ikiwiki\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-01-05 12:22-0400\n"
+"POT-Creation-Date: 2018-02-28 10:39+0000\n"
"PO-Revision-Date: 2007-01-10 23:47+0100\n"
"Last-Translator: Daniel Nylander <po@danielnylander.se>\n"
"Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
msgid "You are banned."
msgstr "Du är bannlyst."
-#: ../IkiWiki/CGI.pm:491 ../IkiWiki/CGI.pm:492 ../IkiWiki.pm:1672
+#: ../IkiWiki/CGI.pm:491 ../IkiWiki/CGI.pm:492 ../IkiWiki.pm:1676
msgid "Error"
msgstr "Fel"
msgid "%s is an attachment, not a page."
msgstr ""
-#: ../IkiWiki/Plugin/git.pm:933 ../IkiWiki/Plugin/git.pm:997 ../IkiWiki.pm:1892
+#: ../IkiWiki/Plugin/git.pm:933 ../IkiWiki/Plugin/git.pm:997 ../IkiWiki.pm:1896
#, perl-format
msgid "you are not allowed to change %s"
msgstr ""
msgid "Unable to detect image type from extension"
msgstr "misslyckades med att skriva %s: %s"
-#: ../IkiWiki/Plugin/img.pm:104 ../IkiWiki/Plugin/img.pm:136
-#: ../IkiWiki/Plugin/img.pm:175 ../IkiWiki/Plugin/img.pm:223
+#: ../IkiWiki/Plugin/img.pm:104 ../IkiWiki/Plugin/img.pm:143
+#: ../IkiWiki/Plugin/img.pm:182 ../IkiWiki/Plugin/img.pm:230
#, fuzzy, perl-format
msgid "failed to read %s: %s"
msgstr "misslyckades med att skriva %s: %s"
-#: ../IkiWiki/Plugin/img.pm:131
+#: ../IkiWiki/Plugin/img.pm:134
+#, fuzzy, perl-format
+msgid "failed to determine format of %s"
+msgstr "misslyckades med att skriva %s: %s"
+
+#: ../IkiWiki/Plugin/img.pm:138
#, perl-format
msgid "%s image processing disabled in img_allowed_formats configuration"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:138
+#: ../IkiWiki/Plugin/img.pm:145
#, fuzzy, perl-format
msgid "\"%s\" does not seem to be a valid %s file"
msgstr "%s verkar inte vara körbar"
-#: ../IkiWiki/Plugin/img.pm:172
+#: ../IkiWiki/Plugin/img.pm:179
#, fuzzy
msgid "Image::Magick is not installed"
msgstr "polygen inte installerad"
-#: ../IkiWiki/Plugin/img.pm:184
+#: ../IkiWiki/Plugin/img.pm:191
#, fuzzy, perl-format
msgid "failed to get dimensions of %s"
msgstr "misslyckades med att skriva %s: %s"
-#: ../IkiWiki/Plugin/img.pm:191
+#: ../IkiWiki/Plugin/img.pm:198
#, perl-format
msgid "wrong size format \"%s\" (should be WxH)"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:227
+#: ../IkiWiki/Plugin/img.pm:234
#, fuzzy, perl-format
msgid "failed to resize: %s"
msgstr "misslyckades med att skriva %s: %s"
-#: ../IkiWiki/Plugin/img.pm:252
+#: ../IkiWiki/Plugin/img.pm:259
#, fuzzy, perl-format
msgid "failed to determine size of image %s"
msgstr "misslyckades med att skriva %s: %s"
msgid "multimarkdown is enabled, but Text::MultiMarkdown is not installed"
msgstr ""
-#: ../IkiWiki/Plugin/mdwn.pm:150
+#: ../IkiWiki/Plugin/mdwn.pm:175
#, perl-format
msgid "failed to load Markdown.pm perl module (%s) or /usr/bin/markdown (%s)"
msgstr ""
msgid "preprocessing loop detected on %s at depth %i"
msgstr "%s förbehandlingsslinga detekterades på %s, djup %i"
-#: ../IkiWiki.pm:1848
+#: ../IkiWiki.pm:1852
#, fuzzy, perl-format
msgid "bad file name %s"
msgstr "hoppar över felaktigt filnamn %s"
-#: ../IkiWiki.pm:2161
+#: ../IkiWiki.pm:2165
#, perl-format
msgid "template %s not found"
msgstr "mallen %s hittades inte"
-#: ../IkiWiki.pm:2419
+#: ../IkiWiki.pm:2423
msgid "yes"
msgstr ""
-#: ../IkiWiki.pm:2504
+#: ../IkiWiki.pm:2508
#, fuzzy, perl-format
msgid "invalid sort type %s"
msgstr "okänd sorteringstyp %s"
-#: ../IkiWiki.pm:2525
+#: ../IkiWiki.pm:2529
#, perl-format
msgid "unknown sort type %s"
msgstr "okänd sorteringstyp %s"
-#: ../IkiWiki.pm:2674
+#: ../IkiWiki.pm:2678
#, fuzzy, perl-format
msgid "cannot match pages: %s"
msgstr "kan inte läsa %s: %s"
msgstr ""
"Project-Id-Version: ikiwiki 3.20091031\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-01-05 12:22-0400\n"
+"POT-Creation-Date: 2018-02-28 10:39+0000\n"
"PO-Revision-Date: 2009-11-08 03:04+0200\n"
"Last-Translator: Recai Oktaş <roktas@debian.org>\n"
"Language-Team: Turkish <debian-l10n-turkish@lists.debian.org>\n"
msgid "You are banned."
msgstr ""
-#: ../IkiWiki/CGI.pm:491 ../IkiWiki/CGI.pm:492 ../IkiWiki.pm:1672
+#: ../IkiWiki/CGI.pm:491 ../IkiWiki/CGI.pm:492 ../IkiWiki.pm:1676
msgid "Error"
msgstr "Hata"
msgid "%s is an attachment, not a page."
msgstr ""
-#: ../IkiWiki/Plugin/git.pm:933 ../IkiWiki/Plugin/git.pm:997 ../IkiWiki.pm:1892
+#: ../IkiWiki/Plugin/git.pm:933 ../IkiWiki/Plugin/git.pm:997 ../IkiWiki.pm:1896
#, perl-format
msgid "you are not allowed to change %s"
msgstr ""
msgid "Unable to detect image type from extension"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:104 ../IkiWiki/Plugin/img.pm:136
-#: ../IkiWiki/Plugin/img.pm:175 ../IkiWiki/Plugin/img.pm:223
+#: ../IkiWiki/Plugin/img.pm:104 ../IkiWiki/Plugin/img.pm:143
+#: ../IkiWiki/Plugin/img.pm:182 ../IkiWiki/Plugin/img.pm:230
#, perl-format
msgid "failed to read %s: %s"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:131
+#: ../IkiWiki/Plugin/img.pm:134
#, perl-format
-msgid "%s image processing disabled in img_allowed_formats configuration"
+msgid "failed to determine format of %s"
msgstr ""
#: ../IkiWiki/Plugin/img.pm:138
#, perl-format
+msgid "%s image processing disabled in img_allowed_formats configuration"
+msgstr ""
+
+#: ../IkiWiki/Plugin/img.pm:145
+#, perl-format
msgid "\"%s\" does not seem to be a valid %s file"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:172
+#: ../IkiWiki/Plugin/img.pm:179
msgid "Image::Magick is not installed"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:184
+#: ../IkiWiki/Plugin/img.pm:191
#, perl-format
msgid "failed to get dimensions of %s"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:191
+#: ../IkiWiki/Plugin/img.pm:198
#, perl-format
msgid "wrong size format \"%s\" (should be WxH)"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:227
+#: ../IkiWiki/Plugin/img.pm:234
#, perl-format
msgid "failed to resize: %s"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:252
+#: ../IkiWiki/Plugin/img.pm:259
#, perl-format
msgid "failed to determine size of image %s"
msgstr ""
msgid "multimarkdown is enabled, but Text::MultiMarkdown is not installed"
msgstr ""
-#: ../IkiWiki/Plugin/mdwn.pm:150
+#: ../IkiWiki/Plugin/mdwn.pm:175
#, perl-format
msgid "failed to load Markdown.pm perl module (%s) or /usr/bin/markdown (%s)"
msgstr ""
msgid "preprocessing loop detected on %s at depth %i"
msgstr ""
-#: ../IkiWiki.pm:1848
+#: ../IkiWiki.pm:1852
#, perl-format
msgid "bad file name %s"
msgstr ""
-#: ../IkiWiki.pm:2161
+#: ../IkiWiki.pm:2165
#, perl-format
msgid "template %s not found"
msgstr ""
-#: ../IkiWiki.pm:2419
+#: ../IkiWiki.pm:2423
msgid "yes"
msgstr ""
-#: ../IkiWiki.pm:2504
+#: ../IkiWiki.pm:2508
#, perl-format
msgid "invalid sort type %s"
msgstr ""
-#: ../IkiWiki.pm:2525
+#: ../IkiWiki.pm:2529
#, perl-format
msgid "unknown sort type %s"
msgstr ""
-#: ../IkiWiki.pm:2674
+#: ../IkiWiki.pm:2678
#, perl-format
msgid "cannot match pages: %s"
msgstr ""
msgstr ""
"Project-Id-Version: ikiwiki\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-01-05 12:22-0400\n"
+"POT-Creation-Date: 2018-02-28 10:39+0000\n"
"PO-Revision-Date: 2007-01-13 15:31+1030\n"
"Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
"Language-Team: Vietnamese <vi-VN@googlegroups.com>\n"
msgid "You are banned."
msgstr "Bạn bị cấm ra."
-#: ../IkiWiki/CGI.pm:491 ../IkiWiki/CGI.pm:492 ../IkiWiki.pm:1672
+#: ../IkiWiki/CGI.pm:491 ../IkiWiki/CGI.pm:492 ../IkiWiki.pm:1676
msgid "Error"
msgstr "Lỗi"
msgid "%s is an attachment, not a page."
msgstr ""
-#: ../IkiWiki/Plugin/git.pm:933 ../IkiWiki/Plugin/git.pm:997 ../IkiWiki.pm:1892
+#: ../IkiWiki/Plugin/git.pm:933 ../IkiWiki/Plugin/git.pm:997 ../IkiWiki.pm:1896
#, perl-format
msgid "you are not allowed to change %s"
msgstr ""
msgid "Unable to detect image type from extension"
msgstr "lỗi ghi %s: %s"
-#: ../IkiWiki/Plugin/img.pm:104 ../IkiWiki/Plugin/img.pm:136
-#: ../IkiWiki/Plugin/img.pm:175 ../IkiWiki/Plugin/img.pm:223
+#: ../IkiWiki/Plugin/img.pm:104 ../IkiWiki/Plugin/img.pm:143
+#: ../IkiWiki/Plugin/img.pm:182 ../IkiWiki/Plugin/img.pm:230
#, fuzzy, perl-format
msgid "failed to read %s: %s"
msgstr "lỗi ghi %s: %s"
-#: ../IkiWiki/Plugin/img.pm:131
+#: ../IkiWiki/Plugin/img.pm:134
+#, fuzzy, perl-format
+msgid "failed to determine format of %s"
+msgstr "lỗi ghi %s: %s"
+
+#: ../IkiWiki/Plugin/img.pm:138
#, perl-format
msgid "%s image processing disabled in img_allowed_formats configuration"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:138
+#: ../IkiWiki/Plugin/img.pm:145
#, fuzzy, perl-format
msgid "\"%s\" does not seem to be a valid %s file"
msgstr "có vẻ là %s không phải có khả năng thực hiện"
-#: ../IkiWiki/Plugin/img.pm:172
+#: ../IkiWiki/Plugin/img.pm:179
#, fuzzy
msgid "Image::Magick is not installed"
msgstr "chưa cài đặt polygen"
-#: ../IkiWiki/Plugin/img.pm:184
+#: ../IkiWiki/Plugin/img.pm:191
#, fuzzy, perl-format
msgid "failed to get dimensions of %s"
msgstr "lỗi ghi %s: %s"
-#: ../IkiWiki/Plugin/img.pm:191
+#: ../IkiWiki/Plugin/img.pm:198
#, perl-format
msgid "wrong size format \"%s\" (should be WxH)"
msgstr ""
-#: ../IkiWiki/Plugin/img.pm:227
+#: ../IkiWiki/Plugin/img.pm:234
#, fuzzy, perl-format
msgid "failed to resize: %s"
msgstr "lỗi ghi %s: %s"
-#: ../IkiWiki/Plugin/img.pm:252
+#: ../IkiWiki/Plugin/img.pm:259
#, fuzzy, perl-format
msgid "failed to determine size of image %s"
msgstr "lỗi ghi %s: %s"
msgid "multimarkdown is enabled, but Text::MultiMarkdown is not installed"
msgstr ""
-#: ../IkiWiki/Plugin/mdwn.pm:150
+#: ../IkiWiki/Plugin/mdwn.pm:175
#, perl-format
msgid "failed to load Markdown.pm perl module (%s) or /usr/bin/markdown (%s)"
msgstr "lỗi nạp mô-đun perl Markdown.pm (%s) hay « /usr/bin/markdown » (%s)"
msgid "preprocessing loop detected on %s at depth %i"
msgstr "vòng lặp tiền xử lý %s được phát hiện trên %s ở độ sâu %i"
-#: ../IkiWiki.pm:1848
+#: ../IkiWiki.pm:1852
#, fuzzy, perl-format
msgid "bad file name %s"
msgstr "đang bỏ qua tên tập tin sai %s"
-#: ../IkiWiki.pm:2161
+#: ../IkiWiki.pm:2165
#, perl-format
msgid "template %s not found"
msgstr "không tìm thấy mẫu %s"
-#: ../IkiWiki.pm:2419
+#: ../IkiWiki.pm:2423
msgid "yes"
msgstr ""
-#: ../IkiWiki.pm:2504
+#: ../IkiWiki.pm:2508
#, fuzzy, perl-format
msgid "invalid sort type %s"
msgstr "kiểu sắp xếp không rõ %s"
-#: ../IkiWiki.pm:2525
+#: ../IkiWiki.pm:2529
#, perl-format
msgid "unknown sort type %s"
msgstr "kiểu sắp xếp không rõ %s"
-#: ../IkiWiki.pm:2674
+#: ../IkiWiki.pm:2678
#, fuzzy, perl-format
msgid "cannot match pages: %s"
msgstr "không thể đọc %s: %s"
ok(! system("rm -rf t/tmp; mkdir -p t/tmp/in"));
+ok(! system("cp t/img/redsquare.bmp t/tmp/in/redsquare.bmp"));
ok(! system("cp t/img/redsquare.png t/tmp/in/redsquare.png"));
ok(! system("cp t/img/redsquare.jpg t/tmp/in/redsquare.jpg"));
ok(! system("cp t/img/redsquare.jpg t/tmp/in/redsquare.jpeg"));
[[!img really-pdf.jpg size=666x]]
[[!img really-pdf.png size=666x]]
[[!img really-pdf.svg size=666x]]
+[[!img redsquare.bmp size=16x]] expecting 16x16 if bmp enabled
EOF
);
ok(utime(333333333, 333333333, "t/tmp/in/imgconversions.mdwn"));
sub size($) {
my $filename = shift;
+ my $decoder;
+ if ($filename =~ m/\.png$/i) {
+ $decoder = 'png';
+ }
+ elsif ($filename =~ m/\.jpe?g$/i) {
+ $decoder = 'jpeg';
+ }
+ elsif ($filename =~ m/\.bmp$/i) {
+ $decoder = 'bmp';
+ }
+ else {
+ die "Unexpected extension in '$filename'";
+ }
my $im = Image::Magick->new();
- my $r = $im->Read(":$filename");
+ my $r = $im->Read("$decoder:$filename");
return "no image: $r" if $r;
my $w = $im->Get("width");
my $h = $im->Get("height");
like($outhtml, qr/${quot}really-pdf\.png${quot} does not seem to be a valid png file/);
ok(! -e "$outpath/666x-really-pdf.png");
+# We do not auto-detect file content unless specifically asked to do so
+ok(! -e "$outpath/16x-redsquare.bmp");
+like($outhtml, qr{${quot}?bmp${quot}? image processing disabled in img_allowed_formats configuration});
+
# resize is deterministic when deterministic=1
ok(utime(333333333, 333333333, "t/tmp/in/redsquare.png"));
ok(! system("rm $outpath/10x-redsquare.png"));
ok(! -e "$outpath/10x-bluesquare.png");
ok(! -e "$outpath/12x-twopages.png");
ok(! -e "$outpath/16x-p1-twopages.png");
+ok(! -e "$outpath/16x-redsquare.bmp");
+like($outhtml, qr{${quot}?bmp${quot}? image processing disabled in img_allowed_formats configuration});
+
+# enable support for everything (this is a terrible idea if you have
+# untrusted users)
+ok(! system(@command, '--set-yaml', 'img_allowed_formats=[everything]', '--rebuild'));
+
+$outhtml = readfile("$outpath.html");
+is(size("$outpath/16x-redsquare.bmp"), "16x16");
+like($outhtml, qr{src="(\./)?imgconversions/16x-redsquare\.bmp" width="16" height="16"});
+unlike($outhtml, qr{${quot}bmp${quot} image processing disabled in img_allowed_formats configuration});
+
+is(size("$outpath/10x-redsquare.png"), "10x10");
+ok(! -e "$outpath/30x-redsquare.png");
+ok($outhtml =~ /width="30" height="30".*expecting 30x30/);
+ok($outhtml =~ /width="42".*expecting 42x/);
+ok($outhtml =~ /height="43".*expecting x43/);
+ok($outhtml =~ /width="42" height="43".*expecting 42x43/);
+
+SKIP: {
+ skip "PDF support not installed (try ghostscript)", 2
+ unless $PDFS_WORK;
+ is(size("$outpath/12x-twopages.png"), "12x12");
+ is(size("$outpath/16x-p1-twopages.png"), "16x2");
+}
+
+ok($outhtml =~ /width="8" height="8".*expecting 8x8/);
+is(size("$outpath/x8-hello:world.png"), "8x8");
+is(size("$outpath/x4-a:b:c.png"), "4x4");
+is(size("$outpath/x6-a:b:c:d:e:f:g:h:i:j.png"), "6x6");
+
+is(size("$outpath/11x-redsquare.jpg"), "11x11");
+is(size("$outpath/12x-redsquare.jpeg"), "12x12");
+is(size("$outpath/13x-SHOUTY.JPG"), "13x13");
+like($outhtml, qr{src="(\./)?imgconversions/11x-redsquare\.jpg" width="11" height="11"});
+like($outhtml, qr{src="(\./)?imgconversions/12x-redsquare\.jpeg" width="12" height="12"});
+like($outhtml, qr{src="(\./)?imgconversions/13x-SHOUTY\.JPG" width="13" height="13"});
+
+# We still do not misinterpret images
+like($outhtml, qr/${quot}really-svg\.png${quot} does not seem to be a valid png file/);
+ok(! -e "$outpath/666x-really-svg.png");
+ok(! -e "$outpath/666x-really-svg.bmp");
+like($outhtml, qr/${quot}really-pdf\.JPEG${quot} does not seem to be a valid jpeg file/);
+ok(! -e "$outpath/666x-really-pdf.jpeg");
+ok(! -e "$outpath/666x-really-pdf.JPEG");
+like($outhtml, qr/${quot}really-pdf\.jpg${quot} does not seem to be a valid jpeg file/);
+ok(! -e "$outpath/666x-really-pdf.jpg");
+like($outhtml, qr/${quot}really-pdf\.png${quot} does not seem to be a valid png file/);
+ok(! -e "$outpath/666x-really-pdf.png");
# now let's remove them again
my ($in, $out);
my $is_preview = delete $args{is_preview};
my $is_https = delete $args{is_https};
+ my $goto = delete $args{goto};
my %defaults = (
SCRIPT_NAME => '/cgi-bin/ikiwiki.cgi',
HTTP_HOST => 'example.com',
);
- if (defined $is_preview) {
+ if (defined $goto) {
+ $defaults{REQUEST_METHOD} = 'GET';
+ $defaults{QUERY_STRING} = 'do=goto&page=a/b/c';
+ }
+ elsif (defined $is_preview) {
$defaults{REQUEST_METHOD} = 'POST';
$in = 'do=edit&page=a/b/c&Preview';
$defaults{CONTENT_LENGTH} = length $in;
return $out;
}
+sub check_goto {
+ my $expected = shift;
+ my $redirect = run_cgi(goto => 1, @_);
+ ok($redirect =~ m/^Status:\s*302\s+/m);
+ ok($redirect =~ m/^Location:\s*(\S*)\r?\n/m);
+ my $location = $1;
+ like($location, $expected);
+}
+
sub test_startup {
ok(! system("rm -rf t/tmp"));
ok(! system("mkdir t/tmp"));
}
sub test_site1_perfectly_ordinary_ikiwiki {
+ diag("test_site1_perfectly_ordinary_ikiwiki");
write_setup_file(
url => "http://example.com/wiki/",
cgiurl => "http://example.com/cgi-bin/ikiwiki.cgi",
check_cgi_mode_bits();
# url and cgiurl are on the same host so the cgiurl is host-relative
check_generated_content(qr{<a[^>]+href="/cgi-bin/ikiwiki.cgi\?do=prefs"});
+ check_goto(qr{^http://example\.com/wiki/a/b/c/$});
my %bits = parse_cgi_content(run_cgi());
like($bits{basehref}, qr{^(?:(?:http:)?//example\.com)?/wiki/$});
like($bits{stylehref}, qr{^(?:(?:http:)?//example.com)?/wiki/style.css$});
like($bits{stylehref}, qr{^(?:(?:https:)?//example.com)?/wiki/style.css$});
like($bits{tophref}, qr{^(?:/wiki|\.)/$});
like($bits{cgihref}, qr{^(?:(?:https:)?//example.com)?/cgi-bin/ikiwiki.cgi$});
+ check_goto(qr{^https://example\.com/wiki/a/b/c/$}, is_https => 1);
# when accessed via a different hostname, links stay on that host
%bits = parse_cgi_content(run_cgi(HTTP_HOST => 'staging.example.net'));
like($bits{stylehref}, qr{^(?:(?:http:)?//staging.example.net)?/wiki/style.css$});
like($bits{tophref}, qr{^(?:/wiki|\.)/$});
like($bits{cgihref}, qr{^(?:(?:http:)?//staging.example.net)?/cgi-bin/ikiwiki.cgi$});
+ TODO: {
+ local $TODO = "hostname should be copied to redirects' Location";
+ check_goto(qr{^https://staging\.example\.net/wiki/a/b/c/$}, is_https => 1);
+ }
# previewing a page
%bits = parse_cgi_content(run_cgi(is_preview => 1));
}
sub test_site2_static_content_and_cgi_on_different_servers {
+ diag("test_site2_static_content_and_cgi_on_different_servers");
write_setup_file(
url => "http://static.example.com/",
cgiurl => "http://cgi.example.com/ikiwiki.cgi",
# url and cgiurl are not on the same host so the cgiurl has to be
# protocol-relative or absolute
check_generated_content(qr{<a[^>]+href="(?:http:)?//cgi.example.com/ikiwiki.cgi\?do=prefs"});
+ check_goto(qr{^http://static\.example\.com/a/b/c/$});
my %bits = parse_cgi_content(run_cgi(SCRIPT_NAME => '/ikiwiki.cgi', HTTP_HOST => 'cgi.example.com'));
like($bits{basehref}, qr{^(?:(?:http:)?//static.example.com)?/$});
like($bits{stylehref}, qr{^(?:(?:https:)?//static.example.com)?/style.css$});
like($bits{tophref}, qr{^(?:https:)?//static.example.com/$});
like($bits{cgihref}, qr{^(?:(?:https:)?//cgi.example.com)?/ikiwiki.cgi$});
+ check_goto(qr{^https://static\.example\.com/a/b/c/$}, is_https => 1,
+ HTTP_HOST => 'cgi.example.com', SCRIPT_NAME => '/ikiwiki.cgi');
# when accessed via a different hostname, links to the CGI (only) should
# stay on that host?
local $TODO = "use self-referential CGI URL?";
like($bits{cgihref}, qr{^(?:(?:http:)?//staging.example.net)?/ikiwiki.cgi$});
}
+ check_goto(qr{^https://static\.example\.com/a/b/c/$}, is_https => 1,
+ HTTP_HOST => 'staging.example.net', SCRIPT_NAME => '/ikiwiki.cgi');
}
sub test_site3_we_specifically_want_everything_to_be_secure {
+ diag("test_site3_we_specifically_want_everything_to_be_secure");
write_setup_file(
url => "https://example.com/wiki/",
cgiurl => "https://example.com/cgi-bin/ikiwiki.cgi",
like($bits{stylehref}, qr{^(?:(?:https:)?//example.com)?/wiki/style.css$});
like($bits{tophref}, qr{^(?:/wiki|\.)/$});
like($bits{cgihref}, qr{^(?:(?:https:)?//example.com)?/cgi-bin/ikiwiki.cgi$});
+ check_goto(qr{^https://example\.com/wiki/a/b/c/$}, is_https => 1);
# when not accessed via HTTPS, links should still be secure
# (but if this happens, that's a sign of web server misconfiguration)
like($bits{stylehref}, qr{^(?:(?:https:)?//example.com)?/wiki/style.css$});
}
like($bits{cgihref}, qr{^(?:(?:https:)?//example.com)?/cgi-bin/ikiwiki.cgi$});
+ check_goto(qr{^https://example\.com/wiki/a/b/c/$}, is_https => 0);
# when accessed via a different hostname, links stay on that host
%bits = parse_cgi_content(run_cgi(is_https => 1, HTTP_HOST => 'staging.example.net'));
like($bits{stylehref}, qr{^(?:(?:https:)?//staging.example.net)?/wiki/style.css$});
like($bits{tophref}, qr{^(?:/wiki|\.)/$});
like($bits{cgihref}, qr{^(?:(?:https:)?//staging.example.net)?/cgi-bin/ikiwiki.cgi$});
+ check_goto(qr{^https://staging\.example\.net/wiki/a/b/c/$}, is_https => 1,
+ HTTP_HOST => 'staging.example.net');
# previewing a page
%bits = parse_cgi_content(run_cgi(is_preview => 1, is_https => 1));
}
sub test_site4_cgi_is_secure_static_content_doesnt_have_to_be {
+ diag("test_site4_cgi_is_secure_static_content_doesnt_have_to_be");
# (NetBSD wiki)
write_setup_file(
url => "http://example.com/wiki/",
like($bits{stylehref}, qr{^(?:(?:https:)?//example.com)?/wiki/style.css$});
like($bits{tophref}, qr{^(?:/wiki|\.)/$});
like($bits{cgihref}, qr{^(?:(?:https:)?//example.com)?/cgi-bin/ikiwiki.cgi$});
+ check_goto(qr{^https://example\.com/wiki/a/b/c/$}, is_https => 1);
# FIXME: when not accessed via HTTPS, should the static content be
# forced to https anyway? For now we accept either
like($bits{stylehref}, qr{^(?:(?:https?:)?//example.com)?/wiki/style.css$});
like($bits{tophref}, qr{^(?:(?:https?://example.com)?/wiki|\.)/$});
like($bits{cgihref}, qr{^(?:(?:https:)?//example.com)?/cgi-bin/ikiwiki.cgi$});
+ check_goto(qr{^https://example\.com/wiki/a/b/c/$}, is_https => 0);
# when accessed via a different hostname, links stay on that host
%bits = parse_cgi_content(run_cgi(is_https => 1, HTTP_HOST => 'staging.example.net'));
local $TODO = "this should really point back to itself but currently points to example.com";
like($bits{cgihref}, qr{^(?:(?:https:)?//staging.example.net)?/cgi-bin/ikiwiki.cgi$});
}
+ check_goto(qr{^https://staging\.example\.net/wiki/a/b/c/$}, is_https => 1,
+ HTTP_HOST => 'staging.example.net');
# previewing a page
%bits = parse_cgi_content(run_cgi(is_preview => 1, is_https => 1));
}
sub test_site5_w3mmode {
+ diag("test_site5_w3mmode");
# as documented in [[w3mmode]]
write_setup_file(
url => undef,
like($bits{cgihref}, qr{^(?:file://)?/\$LIB/ikiwiki-w3m.cgi/ikiwiki.cgi$});
like($bits{basehref}, qr{^(?:(?:file:)?//)?\Q$pwd\E/t/tmp/out/$});
like($bits{stylehref}, qr{^(?:(?:(?:file:)?//)?\Q$pwd\E/t/tmp/out|\.)/style.css$});
+
+ my $redirect = run_cgi(goto => 1, PATH_INFO => '/ikiwiki.cgi',
+ SCRIPT_NAME => '/cgi-bin/ikiwiki-w3m.cgi');
+ like($redirect, qr{^Content-type: text/plain\r?\n}m);
+ like($redirect, qr{^W3m-control: GOTO (?:file://)?\Q$pwd\E/t/tmp/out/a/b/c/\r?\n}m);
}
sub test_site6_behind_reverse_proxy {
+ diag("test_site6_behind_reverse_proxy");
write_setup_file(
url => "https://example.com/wiki/",
cgiurl => "https://example.com/cgi-bin/ikiwiki.cgi",
like($bits{cgihref}, qr{^(?:(?:https:)?//example.com)?/cgi-bin/ikiwiki.cgi$});
like($bits{basehref}, qr{^(?:(?:https:)?//example\.com)?/wiki/$});
like($bits{stylehref}, qr{^(?:(?:https:)?//example.com)?/wiki/style.css$});
+ check_goto(qr{^https://example\.com/wiki/a/b/c/$}, HTTP_HOST => 'localhost');
# previewing a page
%bits = parse_cgi_content(run_cgi(is_preview => 1, HTTP_HOST => 'localhost'));
use IkiWiki;
-ok(system("make >/dev/null") == 0);
+ok(system("make docwiki >/dev/null") == 0);
chdir("html") || die "chdir: $!";