summaryrefslogtreecommitdiff
path: root/IkiWiki/Render.pm
AgeCommit message (Collapse)Author
2007-12-12* Avoid unnecessary stat calls to get mtime when rendering pages, useJoey Hess
cached value. * Preserve input file modification times in output files.
2007-11-26releasing version 2.14Joey Hess
2007-08-28* Support for looking in multiple directories for underlay files.joey
* 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.
2007-07-28typojoey
2007-07-26* Add templatefile hook.joey
* Add pagetemplate plugin, which allows changing the template used for a page. (Not to be confused with the hook of the same name..)
2007-07-26* Fix re-rendering of pages when a linked to page goes away. This was brokenjoey
in version 1.50 with the addition of %destsources. Thanks, Ethan Glasser-Camp.
2007-05-17* Add a destpage parameter to the filter hook.joey
* Fix links to smilies generated by the smiley plugin for inlined pages. The old links were often wrong, but often still worked by accident.
2007-05-12optimise backlinks counting for pagestats, simplify function returns againjoey
2007-05-09* Add the needsbuild hook. Plugins can use this to manipulate which filesjoey
ikiwiki builds when refreshing the wiki.
2007-04-27* pagespec_match() has changed to take named parameters, to better allowjoey
for extended pagespecs. The old calling convention will still work for back-compat for now. * The calling convention for functions in the IkiWiki::PageSpec namespace has changed so they are passed named parameters. * Plugin interface version increased to 2.00 since I don't anticipate any more interface changes before 2.0.
2007-04-08oopsjoey
2007-04-07magic 0joey
2007-04-01* Finally apply the index.html patch, with thanks to everyone who workedjoey
on and supported creating it (especially Tumov). This adds a "usedirs" option that makes ikiwiki use foo/index.html instead of foo.html as output page names. It is not yet enabled by default.
2007-03-31* Hide excess backlinks and expand using CSS trick; control quantiy viajoey
the numbacklinks setting.
2007-03-24* Finally fixed the longstanding inline removal bug.joey
* Renamed %oldpagemtime to a more accurately named %pagemtime and fix it to actually store pages' mtimes. * Add "mtime" sort parameter to inline plugin.
2007-03-08* The underscore escaping support exposed a bug in edit links: Such linksjoey
were titlepage escaped in the urls, and then doubly escaped by the CGI when editing. To fix this, I removed the titlepage escaping in the edit urls. * That means that *every edit link* on the wiki is potentially changed. Rebuilding wikis on upgrade to this version therefore necessary; enabled that in postinst.
2007-03-07My fix to support encoded underscores in page titles broke links to pagesjoey
with underscores in their filenames, since the link code also used titlepage. Create a new linkpage function and have the link code use that instead.
2007-02-20* Changed calling convention for httmllink slightly. The first threejoey
parameters remain the same, but additional options are now passed in using named parameters. * Change plugin interface version to 1.02 to reflect this change. * Add a new anchor option to htmllink. Thanks Ben for the idea. * Support anchors in wikilinks. * Add a "more" plugin based on one contributed by Ben to allow implementing those dreaded "Read more" links in blogs.
2007-02-15* Many changes to make ikiwiki very resistant to write failuresjoey
including out of disk space situations. ikiwiki should never leave truncated files, and if the error occurs during a web-based file edit, the user will be given an opportunity to retry. Inspired by the many ways Moin Moin destroys itself when out of disk. :-) * Fix syslogging of errors.
2007-02-06* Patch based on a patch from Ethan to support relative matching injoey
PageSpecs, by using "./". pagespec_match() has grown a new third parameter to support this.
2007-02-03 code checking for locked pages into a new "lockedit" plugin. Both arejoey
* Avoid using lots of memory when copying large non-html files. Yes, you can keep videos in the wiki..
2007-01-18* Fix handling of discussion links on discussion pages when l10n is used.joey
2006-12-29* Don't put discussion links on discussion pages.joey
2006-12-29* Initial work on internationalization of the program code. po/ikiwiki.potjoey
is available for translation. * Export gettext() from IkiWiki module.
2006-12-28* Improve code that ignores files in the underlaydir if the srcdir has ajoey
file building the same page. Now it will work even if the extensions of the source files differ.
2006-12-23the problem with coding while drunk -- idiotic mistakesjoey
2006-12-23* Avoid creating edit links when not in cgi mode.joey
* Avoid displaying discussion links at all, if there's not a discussion page, when not in cgi mode.
2006-12-21* Turn $config{wiki_file_prune_regexps} into an array that is easier tojoey
manipulate. * Only exclude rss and atom files from processing if the inline plugin is enabled and that feed type is enabled. Else it's just a copyable file type. * Move rss and atom option handling code into the inline plugin. * Applied a rather old patch from Recai to fix the "pruning is too strict" issue. Now you can have wiki source directories inside dotdirs and the like, if you want.
2006-11-26foojoey
2006-11-08* Make sure to check for errors from every eval.joey
2006-11-01* Implemented expiry options for aggregate plugin.joey
* Use precalculated backlinks info when determining if files need an update due to a page they link to being added/removed. Mostly significant if there are lots of pages. * Remove duplicate link info when saving index. In some cases it could pile up rather badly. (Probably not the best way to deal with this problem.)
2006-10-28fix a bugjoey
2006-10-28 instead of over and over. Typical speedup is ~4x. Max possible speedup:joey
8x. * Add "scan" parameter to hook(), which is used to make the hook be called during the scanning pass, as well as the render pass. The meta and tag plugins need to use the new scan parameter, so will any others that modify %links. * Now that links are calculated in a separate pass, it can also precalculate backlinks in one pass, which is O(N^2) instead of the previous code that was O(N^3). A very nice speedup for wikis with lots (thousands) of pages.
2006-10-28* Add a separate pass to find page links, and only render each page once,joey
instead of over and over. This is up to 8 times faster than before! (This could have introduced some subtle bugs, so it needs to be tested extensively.)
2006-10-08* Change %renderedfiles to store an array of files rendered from a givenjoey
source file, to allow tracking of extra rendered files like rss feeds. * Note that plugins that accessed this variable will need to be updated! The plugin interface has been increased to version 1.01 for this change. * Add will_render function to the plugin interface, used to register that a page renders a destination file, and do some security checks. * Use will_render in the inline and linkmap plugins. * Previously but no longer rendered files will be cleaned up. * You will need to rebuild your wiki on upgrade to this version.
2006-09-21* Add --render mode, which can be used to preview an edit at the commandjoey
line by test rendering a single page.
2006-09-09* Work on firming up the plugin interface:joey
- Plugins should not need to load IkiWiki::Render to get commonly used functions, so moved some functions from there to IkiWiki. - Picked out the set of functions and variables that most plugins use, documented them, and made IkiWiki export them by default, like a proper perl module should. - Use the other functions at your own risk. - This is not quite complete, I still have to decide whether to export some other things. * Changed all plugins included in ikiwiki to not use "IkiWiki::" when referring to stuff now exported by the IkiWiki module. * Anyone with a third-party ikiwiki plugin is strongly enrouraged to make like changes to it and avoid use of non-exported symboles from "IkiWiki::". * Link debian/changelog and debian/news to NEWS and CHANGELOG. * Support hyperestradier version 1.4.2, which adds a new required phraseform setting.
2006-08-31drop the loop number to 3, 10 seems a bit much..joey
2006-08-28* Change htmlize, format, and sanitize hooks to use named parameters.joey
2006-08-27fix reference counting oopsjoey
2006-08-27re-emit unprocessed preprocessor directives in full, in case they're reallyjoey
wikilinks with spaces
2006-08-26added infojoey
2006-08-26switch to > n (currently 10) cycle loop protection since eg tumov's includejoey
plugin preprocesses included pages using the name of the including page
2006-08-25use a hashjoey
2006-08-25* Generalised preprocesser loop protection code.joey
2006-08-23remove unused optionjoey
2006-08-23* Change order of linkify and preprocess; first preprocess and then linkify.joey
This allows passing a wikilink inside a parameter to a preprocessor directive without it being expanded to html, and leaking out of the parameter, which had required some non-obvious use of triple-quoting to avoid. Note that any preprocessor plugins that output something that looks like a wikilink will now have it treated as such; AFAIK this doesn't change any behavior though except for the template plugin. * Enable preprocessor directives when previewing an edit.
2006-08-23updatejoey
2006-08-23fixesjoey
2006-08-23* Allow preprocessor directives to contain python-like triple-quotedjoey
text blocks, for easy nesting of quotes inside. * Add a template plugin. * Use the template plugin to add infoboxes to each plugin page listing basic info about the plugin.