aboutsummaryrefslogtreecommitdiff
path: root/IkiWiki.pm
Commit message (Collapse)AuthorAge
* Error handling improvement for preprocess hooks. It's now safe to call ↵Joey Hess2008-07-13
| | | | error() from such hooks; it will cause a nicely formatted error message to be inserted into the page.
* only htmlize errors when cgi is actually runningJoey Hess2008-07-12
|
* Move yesno function out of inline and into IkiWiki core, not exported.Joey Hess2008-07-12
|
* rename beautify_url to stress it only works on the path componentJoey Hess2008-07-11
|
* Revert "Revert "Fix a bug with links to pages whose names contained colons.""Joey Hess2008-07-11
| | | | | | This reverts commit 810a355308d276ef922ff4312bff0c7935676633. I double-checked, and the change seems ok after all, actually.
* Revert "Fix a bug with links to pages whose names contained colons."Joey Hess2008-07-11
| | | | | | | | | | | This reverts commit e25c3a0a7caa9783c657efe86611929ecb7bd4a3. I didn't think that through far enough; beautify_url may be called on full urls, which don't start with "/"! Conflicts: debian/changelog
* whitespaceJoey Hess2008-07-11
|
* Fix a bug with links to pages whose names contained colons.Joey Hess2008-07-08
| | | | | | | | | So the problem is that ikiwiki would generate a relative link like href="colon:problem", which web browsers treat as being in the "colon:" uri scheme. The best fix seems to be to make url beautification fix this, by slapping a "./" in front.
* editpage escaping fixesJoey Hess2008-07-06
| | | | | | | | | | | * 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.
* typoJoey Hess2008-07-02
|
* factor out glob2reJoey Hess2008-07-02
|
* better approach for cgi upload disablingJoey Hess2008-07-01
| | | | | Make it a config setting, this way subtle load order issues don't come into play. (As much?)
* append index.html to url generated by urlto("")Joey Hess2008-06-15
| | | | | | | | | | | | | This special case crops up when generating the parentlink to the toplevel index page. urlto("") had been generating a link to "./" (or "../" etc) for that, which is fine, if the web server redirects that to the toplevel index.html. It's less fine if there is no web server. I actually ran into the problem first when using gopher. (Yes, yes, don't laugh.. see upcoming tip.) But it also crops up when browsing local wiki files. Of course, the index.html is stripped back off if usedirs is enabled.
* 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.)
* move indexing to sanitize hookJoey Hess2008-06-04
| | | | | | | I think this will give better results overall. I made %IkiWiki::preprocessing accessible and used it to avoid indexing at unnecessary points.
* Add rel=nofollow to edit links. This may prevent some spiders from pounding ↵Joey Hess2008-05-28
| | | | on the cgi following edit links.
* Avoid unsightly warning message when evaling broken pagespecs.Joey Hess2008-05-22
| | | | Also improve error message when a pagespec fails to parse.
* ENV can be used in the setup file to override environment variable setting, ↵Joey Hess2008-05-15
| | | | such as TZ or PATH.
* Optimised file statting code when scanning for modified pages; cut the ↵Joey Hess2008-05-07
| | | | number of system calls in half. (Still room for improvement.)
* avoid strange FreeBSD problemJoey Hess2008-05-05
| | | | | | | <mxey> I have a weird problem with Ikiwiki on FreeBSD: When rendering this page <http://rafb.net/p/zmfROX86.html>, I get "ikiwiki.setup: Modification of a read-only value attempted at /usr/local/lib/perl5/site_perl/5.8.8/IkiWiki.pm line 1300.". And converting the constructors to not operate on the parameters directly but use lexical variables fixed it. Not sure exactly when this occurs.
* Fix ugly display when editing a page that has vanished.Joey Hess2008-05-02
| | | | | srcfile now has an optional second parameter to avoid it throwing an error if the source file does not exist.
* Correct a bug in pagespec matching, where a empty pagespec matched all pages.Joey Hess2008-04-24
| | | | | | | This manifested as wikis with no locked pages treating them all as locked. The bug was introduced in version 2.41. Medium urgency upload due to above fix.
* Fix missing import of escapeHTML in userlink. (Scott Bronson)Joey Hess2008-04-10
|
* Added a hardlink option in the setup file, useful if the source and dest are ↵Joey Hess2008-03-29
| | | | on the same filesystem and the wiki includes large media files, which would normally be copied, wasting time and space.
* fix page source storingJoey Hess2008-03-21
| | | | This saves space, and stores the data under the right keys.
* fix transition callJoey Hess2008-03-21
|
* add transition code for indexdbJoey Hess2008-03-21
|
* Changed to a binary index file, written using Storable, for speedJoey Hess2008-03-21
| | | | | | | | During refresh of a wiki with 800 files, loadindex was using more total time than any other function, and saveindex was also in the top ten. Rewriting them to use Storable makes them three times as fast. 0.7 seconds is saved on my laptop in profiling mode.
* Precompile pagespecs, about 10% overall speedupJoey Hess2008-03-21
| | | | | | | | | | | | | | About 12% of ikiwiki runtime was spent in pagespec_match. It was evaling the same pagespec code over and over again. This changes pagespec_translate to return memoized, precompiled functions that can be called to match against a given pagespec. This also allows getting rid of the weird variable scoping trick that had to be in effect for pagespec_translate to be called -- the variables are now just fed into the function it returns. On my laptop, this drops build time for the docwiki from about 60 to 50 seconds.
* improve commentJoey Hess2008-03-21
|
* * Detect invalid pagespecs and do not merge them in add_depends,Joey Hess2008-03-17
| | | | as that can result in a broken merged pagespec that matches nothing.
* * Correct bug in encoding of %pagestate keys, fixes edittemplate.Joey Hess2008-03-17
|
* typoJoey Hess2008-02-24
|
* * Add the linkify and scan hooks. These hooks can be used to implementJoey Hess2008-02-11
| | | | | | custom, first-class types of wikilinks. * Move standard wikilink implementation to a new wikilink plugin, which will of course be enabled by default.
* Tighten page name regex to not allow carriage returns or line feedsJosh Triplett2008-02-09
|
* Allow whitespace in page names.Josh Triplett2008-02-06
| | | | | Spaces in page names map to underscores in file names. Newlines and tabs follow ikiwiki's usual filename escaping rules: __10__ and __9__.
* Merge branch 'master' into prefix-directivesJoey Hess2008-02-05
|\
| * * inline: Add new `allowrss` and `allowatom` config options. These can beJoey Hess2008-02-04
| | | | | | | | | | used if you want a wiki that doesn't default to generating rss or atom feeds, but that does allow them to be turned on for specific blogs.
| * clear %pagestate in loadindexJoey Hess2008-02-03
| | | | | | | | | | This is to handle the case where loadindex is called multiple times in one run, as when aggregating.
| * move openiduser function to the openid pluginJoey Hess2008-01-30
| |
| * * 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.
| * improve support for internal pagesJoey Hess2008-01-29
| | | | | | | | | | | | 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.
| * non-tabular recentchanges displayJoey Hess2008-01-29
| | | | | | | | Doesn't look as good as the old table, but works as a rss feed.
| * * Removed support for sending commit notification mails. Along with it wentJoey Hess2008-01-29
| | | | | | | | | | the svnrepo and notify settings, though both will be ignored if left in setup files.
| * only linkify openids in userlinkJoey Hess2008-01-28
| | | | | | | | | | | | | | | | | | Can't use htmllink in userlink due to it being called from recentchanges in cases where there is no configured url. It seems easist, at least for now, to not linkify user names in this case. I don't think I've ever clicked on such a link anyway. Might revisit this later.
| * move userlink to IkiWiki.pmJoey Hess2008-01-28
| | | | | | | | I have a plugin that needs to use userlink.
* | Add new preprocessor directive syntax¸ using a '!' prefix.Josh Triplett2008-01-27
|/ | | | | | | | Add a prefix_directives option to the setup file to turn this syntax on; currently defaults to false, for backward compatibility. Support optional '!' prefix even with prefix_directives off, and use that in the underlay to support either setting of prefix_directives. Add NEWS entry with migration information.
* fixJoey Hess2008-01-09
|
* not only markdown adds gunk, so remove it in the main htmlize functionJoey Hess2008-01-09
|
* Call preprocessor hooks in void context during the scan pass.Joey Hess2008-01-09
| | | | | This allows the hook to determine if it's just scanning, and avoid expensive operations.