aboutsummaryrefslogtreecommitdiff
path: root/IkiWiki/Plugin/meta.pm
Commit message (Collapse)AuthorAge
* meta: Add openid delegate parameter to allow delegating only openid or openid2.Joey Hess2009-06-08
|
* Avoid %links accumulating duplicates. (For TOVA)Joey Hess2009-05-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | This is sorta an optimisation, and sorta a bug fix. In one test case I have available, it can speed a page build up from 3 minutes to 3 seconds. The root of the problem is that $links{$page} contains arrays of links, rather than hashes of links. And when a link is found, it is just pushed onto the array, without checking for dups. Now, the array is emptied before scanning a page, so there should not be a lot of opportunity for lots of duplicate links to pile up in it. But, in some cases, they can, and if there are hundreds of duplicate links in the array, then scanning it for matching links, as match_link and some other code does, becomes much more expensive than it needs to be. Perhaps the real right fix would be to change the data structure to a hash. But, the list of links is never accessed like that, you always want to iterate through it. I also looked at deduping the list in saveindex, but that does a lot of unnecessary work, and doesn't completly solve the problem. So, finally, I decided to add an add_link function that handles deduping, and make ikiwiki-transition remove the old dup links.
* Add meta field "updated", which can alter the <updated> Atom elementSimon McVittie2009-01-18
| | | | | | | | | | | Some aggregators, like Planet, sort by mtime rather than ctime. This means that posts with modified content come to the top (which seems odd to me, but is presumably what the aggregator's author or operator wants), but it also means that posts with insignificant edits (like adding tags) come to the top too. Atom defines <updated> to be the date of the last *significant* change, so it's fine that ikiwiki defaults to using the mtime, but it would be good to have a way for the author to say "that edit was insignificant, don't use that mtime".
* finalise version 3.00 of the plugin apiJoey Hess2008-12-23
|
* meta: Process meta date during scan pass so that the date will always affect ↵Joey Hess2008-12-21
| | | | sorting in inlines.
* Coding style change: Remove explcit vim folding markers.Joey Hess2008-12-17
|
* meta: Pass info to htmlscrubber so htmlscrubber_skip can take effect.Joey Hess2008-12-12
|
* Export pagetitle, titlepage, linkpage.Joey Hess2008-09-27
|
* add plugin safe/rebuild info (part 1 of 2)Joey Hess2008-08-03
| | | | too many plugins.. brain exploding..
* switch preprocess hooks to use error functionJoey Hess2008-07-13
|
* Stop prepending urn:uuid: to guids that look like UUIDsSimon McVittie2008-07-12
|
* Bug fix: use &IkiWiki::pagetitle rather than nonexistent &pagetitle in meta ↵Simon McVittie2008-07-12
| | | | plugin, so that PageSpecs with title(...) work again
* rename uuid to guidJoey Hess2008-07-12
|
* meta plugin: if uuid looks like it is in fact a UUID, prepend "urn:uuid" ↵Simon McVittie2008-07-11
| | | | (otherwise leave it alone, so we can assign non-UUID <id>s to Atom items to avoid planet-flooding)
* meta plugin: also collect [[!meta uuid="..."]]Simon McVittie2008-07-11
|
* factor out glob2reJoey Hess2008-07-02
|
* meta: Store "description" in pagestate for use by other plugins.Joey Hess2008-06-15
| | | | map: Support show=description.
* Pass a destpage parameter to the sanitize hook.Joey Hess2008-06-04
| | | | | | | | 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.)
* Close meta tag for redir properly.Joey Hess2008-03-21
|
* fix syntax errorJoey Hess2008-03-12
|
* Correct meta.robots attribute value->contentmartin f. krafft2008-03-11
| | | | | | | This was a silly typo, sorry. <meta ...> takes an attribute content, not value. Signed-off-by: martin f. krafft <madduck@madduck.net>
* Generate openid2 headers as wellmartin f. krafft2008-03-11
| | | | | | This causes meta.openid to also generate the openid2 headers. Signed-off-by: martin f. krafft <madduck@madduck.net>
* Let meta.openid set X-XRDS-Location headermartin f. krafft2008-03-11
| | | | | | | | | | Adds an optional xrds-location parameter to the openid meta handler, which allows for XRDS delegation. A good document on XRDS is http://www.windley.com/archives/2007/05/using_xrds.shtml Signed-off-by: martin f. krafft <madduck@madduck.net>
* Add robots tag to meta pluginmartin f. krafft2008-03-02
| | | | | | | | Add special handling for <meta name="robots" ...> which needs not be scrubbed as it's harmless. Signed-off-by: martin f. krafft <madduck@madduck.net> (cherry picked from commit b15d0299a7f7b147e89d8a202d6cca1c21491af2)
* * meta: Check that the urls provided for authorurl, permalink, and openidJoey Hess2008-02-10
| | | | are safe and can't contain javascript.
* add missing test to avoid uninitialised value when a page with metadata is ↵Joey Hess2008-01-29
| | | | removed
* * meta: Add pagespec functions to match against title, author, authorurl,Joey Hess2008-01-29
| | | | | | | 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.
* * mdwn: When htmlizing text, if it's a single line with no newline,Joey Hess2008-01-09
| | | | | | remove the enclosing paragraph and newline markdown wraps it in. This allows removing several hacks around this markdown behavior from other plugins that htmlize fragements of pages.
* don't process data metadata in scan, as it's expensive and the metadata ↵Joey Hess2008-01-09
| | | | should not be needed so early
* * meta: Run in scan mode again (more intelligently) and re-add support forJoey Hess2008-01-09
| | | | | | meta link. * Fix support for the case where metadata appears after an inline directive. This was broken in version 2.16.
* * inline: Add copyright/license info on a per-post basis to atomJoey Hess2008-01-09
| | | | | feeds if available. (rss doesn't allow such info on a per-post basis) * meta: Allow copyright/license metadata to contain arbitrary markup.
* IkiWiki/Plugin/meta.pm <redir>: Support for specifying anchors.Thomas Schwinge2007-12-22
|
* * meta: Drop support for "meta link", since supporting this for internalJoey Hess2007-12-16
| | | | | | | | | | | | | | | | links required meta to be run during scan, which complicated its data storage, since it had to clear data stored during the scan pass to avoid duplicating it during the normal preprocessing pass. * If you used "meta link", you should switch to either "meta openid" (for openid delegations), or tags (for internal, invisible links). I assume that nobody really used "meta link" for external, non-openid links, since the htmlscrubber ate those. (Tell me differently and I'll consider bringing back that support.) * meta: Improved data storage. * meta: Drop the hackish filter hook that was used to clear stored data before preprocessing, this hack was ugly, and broken (cf: liw's disappearing openids). * aggregate: Convert filter hook to a needsbuild hook.
* real redir cycle detectionJoey Hess2007-12-08
|
* * Finally implemented a simple per-page data storage mechanism for plugins,Joey Hess2007-12-08
| | | | | via the %pagestate hash. * Use pagestate in meta to detect potential redir loops.
* wikilink fixJoey Hess2007-12-08
|
* drop redir loop detection codeJoey Hess2007-12-08
| | | | | | it won't work for incremental builds for now, relying on browsers to notice loops
* * meta: Add redir support, based on a patch by Thomas Schwinge.Joey Hess2007-12-08
|
* Here is a patch to add a forwarding functionality to the meta pluginThomas Schwinge2007-12-08
|
* bugfixesjoey2007-09-15
|
* if an inlined page has the same copyright or license as the page it'sjoey2007-09-14
| | | | | inlined into, don't display them twice
* * meta: Support license and copyright information. The information willjoey2007-09-14
| | | | | | be shown in the page footer. HTML will also be inserted that should support the rel=license microformat as well as the HTML spec's rel=copyright.
* * Fix links to alternate stylesheets when usedirs is enabled.joey2007-07-13
| | | | | | * Use type= not style= in html for alternate stylesheets, which is more correct (but in my testing both epiphany and iceweasel work ok with style=text/css).
* * Fix links to stylesheets when usedirs is enabled.joey2007-07-13
|
* * More consistent encoding of titles in rss and atom feeds. Don't usejoey2007-05-28
| | | | | | | | | | | ESCAPE=HTML for titles in the templates for these feeds, and instead escape the title going in to the template. Previously, the title was sometimes double-escaped in a feed (if set via meta title), and sometimes not (if set from the page filename). * In the meta plugin, when a title is set, encode the html entities in it numerically. This works better in the current landscape of a rss spec that doesn't specify encoding, and variously broken feed consumers, according to <http://www.rssboard.org/rss-profile#data-types-characterdata>.
* didn't mean to make this change (yet)joey2007-05-28
|
* * Apply a patch from Carl Worth allowing a class attribute to be passedjoey2007-05-28
| | | | through the img plugin. Also allow the id attribute to be passed through.
* * pagespec_match() has changed to take named parameters, to better allowjoey2007-04-27
| | | | | | | | | 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.
* fixjoey2007-03-21
|
* * Fix a security hole that allowed insertion of unsafe content via the metajoey2007-03-21
| | | | | | | | | | plugins's support for inserting html link and meta tags. Now such content is passed through the htmlscrubber like everything else. * Unfortunatly, that means that some valid uses of those tags are no longer usable, and special case methods needed to be added for including stylesheets, and for doing openid delegation. If you use either of these in your wiki, it will need to be modified. See the meta plugin docs for details.