Age | Commit message (Collapse) | Author |
|
... so that nicepagetitle hook's effects, such as translation status displayed
in links, are updated when the linked page changes.
The replacement of 'my %backlinks' with 'our %backlinks' in Render.pm made this
work: previously, every postscan hook was called with an almost empty
%backlinks, which defeated all my attempts to implement this feature.
This feature hits performance a bit. Its cost was quite small in my real-world
use-cases (a few percents bigger refresh time), but could be bigger in worst
cases. Time will tell.
NB: this hack could also be used by my meta branch. It may even be a ikiwiki
optional feature.
Signed-off-by: intrigeri <intrigeri@boum.org>
|
|
|
|
Avoids some uninitialised value warnings.
|
|
|
|
The machine parseable date needs to include a timezone.
Also, simplified the interface for date display.
|
|
relative, in a very nice way, if I say so myself.
|
|
|
|
|
|
if desired.
|
|
|
|
Previously, if a page changed its type but not its mtime
(e.g. mv page.txt page.mdwn), then it would not be rebuilt.
Now, check if the source of a page has changed,
in which case force a rebuild of that page.
(cherry picked from commit b6a3b8a683fed7a7f6d77a5b3f2dfbd14c849843)
|
|
can be used to avoid a security check that is a good safe default, but
problimatic overkill in some situations.
I decided to underdocument this, because the option looks ugly, and I don't
want people randomly turning it on because it looks like a good idea. So if
you need it, you'll get an error message mentioning how to fix it.
|
|
* Add a postscan hook.
* search: Use postscan hook, avoid updating index when previewing.
|
|
* Renamed to parentlinks every single variable or function called
pedigree
* Removed the parentlinks function from Render.pm
* Enabled the new parentlinks plugin by default
* Adapted testsuite and documentation to reflate the above facts
Signed-off-by: intrigeri <intrigeri@boum.org>
|
|
If hardlinks are enabled, it would hardlink files from the underlay. That
was sorta annoying if you tried to edit by hand for some reason, so let's
not. Files that are hardlinked should be rare enough that a few extra stats
won't hurt.
|
|
* The editpage form now uses the raw page name, not the page title, in its
'page' cgi parameter. Using the title was ambiguous and made it
impossible to tell between some pages, like "foo/bar" and "foo__47__bar",
sometimes causing the wrong page to be edited.
* This change means that some edit links need to be updated.
Force a rebuild on upgrade to this version.
* Above change also allowed really fixing escaped slashes from the blogpost
form.
|
|
|
|
|
|
Because the search plugin needed it, also because it's one of the few
plugins that didn't already have it.
I also considered adding it to htmlize, but I really cannot imagine caring
what the destpage is when htmlizing. (I'll probably be poven wrong later.)
|
|
wikilinks added by filters from being scanned properly. But no known filter hook does that, and calling filters unncessarily during scan slowed down complex filters such as the one used to update the xapian index.
|
|
This allows plugins to getopt and change what is done before an incorrect
line is printed.
|
|
pruning not yet implemented, however
|
|
number of system calls in half. (Still room for improvement.)
|
|
on the same filesystem and the wiki includes large media files, which would normally be copied, wasting time and space.
|
|
internal pages won't be in revision control so this avoids some ugly noise
|
|
custom, first-class types of wikilinks.
* Move standard wikilink implementation to a new wikilink plugin, which
will of course be enabled by default.
|
|
|
|
There are several cases (recentchanges files, aggregated files)
where some source files are not in revision control.
|
|
since this leads to too many problems with web caching, especially with
inlined pages. Properly solving this would involve tracking every page
that contributes to a page's content and using the youngest of them all,
as well as special cases for things like the version plugin, and it's just
too complex to do.
|
|
|
|
|
|
scan() does too much. All that is needed is to preprocess the internal page
in scan-only mode.
|
|
license, and copyright. This can be used to create custom RecentChanges.
* meta: To support the pagespec functions, metadata about pages has to be
retained as pagestate.
* Fix encoding bug when pagestate values contained spaces.
|
|
|
|
I kept it to a simple global configuration, rather than using the
preprocessor directive for recentchanges, because that had chicken and egg
problems and seemed overcomplicated. This should work reasonably well,
though it would be good to add some more metadata so that more customised
recentchanges pages can be made.
|
|
This makes it a lot quicker to deal with lots of recentchanges pages
appearing and disappearing. It avoids needing to clutter up pagespecs with
exclusions for those pages, by making normal pagespecs not match them.
|
|
|
|
This is important to do because until will_render is called, ikiwiki doesn't
know that the page exists. This avoids recentchanges re-writing every change
page every run.
|
|
|
|
|
|
|
|
cached value.
* Preserve input file modification times in output files.
|
|
|
|
* Plugins can add new directories to the search path with the add_underlay
function.
* Split out smiley underlay files into a separate underlay, so if the plugin
isn't used, the wiki isn't bloated with all those files.
|
|
|
|
* Add pagetemplate plugin, which allows changing the template used for
a page. (Not to be confused with the hook of the same name..)
|
|
in version 1.50 with the addition of %destsources. Thanks, Ethan
Glasser-Camp.
|
|
* Fix links to smilies generated by the smiley plugin for inlined pages. The
old links were often wrong, but often still worked by accident.
|
|
|
|
ikiwiki builds when refreshing the wiki.
|