summaryrefslogtreecommitdiff
path: root/doc/plugins/write.mdwn
AgeCommit message (Collapse)Author
2009-01-16checkcontent: New hook, can be used to implement arbitrary content filters, ↵Joey Hess
including spam filters.
2008-12-26Merge branch 'master' into nextJoey Hess
2008-12-26inline: Run format hook firstJoey Hess
inline has a format hook that is an optimisation hack. Until this hook runs, the inlined content is not present on the page. This can prevent other format hooks, that process that content, from acting on inlined content. In bug ##509710, we discovered this happened commonly for the embed plugin, but it could in theory happen for many other plugins (color, cutpaste, etc) that use format to fill in special html after sanitization. The ordering was essentially random (hash key order). That's kinda a good thing, because hooks should be independent of other hooks and able to run in any order. But for things like inline, that just doesn't work. To fix the immediate problem, let's make hooks able to be registered as running "first". There was already the ability to make them run "last". Now, this simple first/middle/last ordering is obviously not going to work if a lot of things need to run first, or last, since then we'll be back to being unable to specify ordering inside those sets. But before worrying about that too much, and considering dependency ordering, etc, observe how few plugins use last ordering: Exactly one needs it. And, so far, exactly one needs first ordering. So for now, KISS. Another implementation note: I could have sorted the plugins with first/last/middle as the primary key, and plugin name secondary, to get a guaranteed stable order. Instead, I chose to preserve hash order. Two opposing things pulled me toward that decision: 1. Since has order is randomish, it will ensure that no accidental ordering assumptions are made. 2. Assume for a minute that ordering matters a lot more than expected. Drastically changing the order a particular configuration uses could result in a lot of subtle bugs cropping up. (I hope this assumption is false, partly due to #1, but can't rule it out.)
2008-12-24make ikiwiki-transition prefix_directives take a setup fileJoey Hess
This is easier to remeber, and less error-prone than passing it all the pages in the wiki.
2008-12-23finalise version 3.00 of the plugin apiJoey Hess
2008-12-11inline: Support feedfile option to change the filename of the feed generated.Joey Hess
2008-10-24include temp file for attachment change tooJoey Hess
2008-10-24Typo fix.tschwinge
2008-10-23check_canattach hooked upJoey Hess
2008-10-23more work on untrusted committersJoey Hess
Wired up check_canedit and check_canremove, still need to deal with check_canattach, and test.
2008-10-22initial support for git repos with untrusted committersJoey Hess
Still need to wire up the calls to check_* , but it's cold out here and my hands are going numb, so enough for now.
2008-10-21displaytime hook is goneJoey Hess
2008-10-21function injection overhaulJoey Hess
Add an inject function, that can be used by plugins that want to replace one of ikiwiki's functions with their own version. (This is a scary thing that grubs through the symbol table, and replaces all exported occurances of a function with the injected version.) external: RPC functions can be injected to replace exported functions. Removed the stupid displaytime hook, and use injection instead.
2008-10-19add displaytime hookJoey Hess
Need to use a hook because an exported function cannot be reliably overridden. The replacement verstion was actually only affecting plugins loaded after it. formattime doesn't need a hook, since there's no reason to export it.
2008-10-17Add an underlay for javascript, and add ikiwiki.js containing some utility code.Joey Hess
* Add an underlay for javascript, and add ikiwiki.js containing some utility code. * toggle: Stop embedding the full toggle code on each page using it, and move it to toggle.js in the javascript underlay.
2008-09-29add newpagefile functionJoey Hess
2008-09-27Add %wikistate, which is like %pagestate except not specific to a given ↵Joey Hess
page, and is preserved across rebuilds.
2008-09-27Export pagetitle, titlepage, linkpage.Joey Hess
2008-09-27clarify when to use utlto and when to use htmlpageJoey Hess
suggestion from smcv
2008-09-26clarifyJoey Hess
2008-09-23Add keepextension parameter to htmlize hook. (Willu)Joey Hess
2008-09-12fix IkiWiki::Setup::load docsJoey Hess
2008-08-26fix %pagestate{Joey Hess
2008-08-25rename preprocessordirective to directiveJoey Hess
Reasons include: - easier to type - might want postprocessor directives again sometime, and listdirectives can then use the directive/* files for either - that it's done as a preprocessor step is an internal detail (and not a very accurate one, really :-)
2008-08-03Demote renamepage hook to a <h3> to fix the ToChttp://smcv.pseudorandom.co.uk/
2008-08-03plugin safe/rebuild controlsJoey Hess
2008-08-03add advanced and basic modesJoey Hess
2008-08-03remove description_html, add linkJoey Hess
2008-08-02websetup form display doneJoey Hess
2008-08-01admin prefs move to setup file, stage 1Joey Hess
The locked pages configuration is moving to a locked_pages option in the setup file, and the allowed attachments configuration to allowed_attachments. The admin prefs page can still be used for these, but that's depreacted and will only be shown if there's currently a value.
2008-07-31Merge branch 'master' into autoconfigJoey Hess
Conflicts: IkiWiki/Plugin/git.pm debian/changelog po/ikiwiki.pot
2008-07-31improve preprocessor docsJoey Hess
2008-07-27handle options with no value and no example valueJoey Hess
2008-07-26remove ikiwiki.setupJoey Hess
To generate your own, use ikiwiki -dumpsetup ikiwiki.setup Update docs.
2008-07-26clarificationJoey Hess
2008-07-26finish with rcs plugin conversionJoey Hess
2008-07-26remove default values in getsetupJoey Hess
They were a bit confusing, since they did not actually set the default, and example values are sufficient.
2008-07-26load all plugins when generating setupJoey Hess
2008-07-26fixesJoey Hess
2008-07-26standardising and documenting getsetupJoey Hess
2008-07-25fix feed urlsJoey Hess
The fix for colons involved adding "./" to some urls. Due to the weird way inline called urlto, these snuck into feed urls and permalinks. Fix it by adding an optional third parameter to urlto.
2008-07-23add renamepage hooksJoey Hess
Implemented for regular wikilinks, with a test suite.
2008-07-22formattingJoey Hess
2008-07-21Migrate doc/plugins via prefix_directivesSimon McVittie
This is a partial commit of: egrep -rl '\[\[[a-z]+ ' doc | xargs --max-args 1 ./ikiwiki-transition prefix_directives
2008-07-17Add a postscan hook.Joey Hess
* Add a postscan hook. * search: Use postscan hook, avoid updating index when previewing.
2008-07-13Error handling improvement for preprocess hooks. It's now safe to call ↵Joey Hess
error() from such hooks; it will cause a nicely formatted error message to be inserted into the page.
2008-07-10reviewed this againJoey Hess
2008-07-10document setup pluginsJoey Hess
2008-06-28call format hooks when generating page previewsJoey Hess
* toc: Revert change in 2.45 that made it run at sanitize time. This breaks use of toc in a sidebar. * Call format hooks when generating page previews, thus fixing toc display there, as well as fixing inlins to again display in page previews, since it's started using format hooks. This also allows several other things, like embed, that use format hooks, to work during page preview time. * Format hooks should not rely on getting an entire html document, as they will only get the body during page preview. * toggle: Deal with preview mode when adding javascript.
2008-06-04Pass a destpage parameter to the sanitize hook.Joey Hess
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.)