Go to file
Simon McVittie 5fd863b5b0 Revert "Assume that every page has been scanned by the time the scan phase ends"
This reverts commit c04a26f3e7, which
turns out to break the templatebody directive: readtemplate() relies
on scan() populating %templates, but if scan() is a no-op after
leaving the scan phase, we can't rely on that.

The assumption made by skipping scan() after the end of the render phase
is that everything that comes from a scan is already in the index.
However, we don't really want to put template bodies in the index:
that would force us to load and save them on every refresh, and
redundantly persist them to disk.

Test-case:

% make clean
% ./Makefile.PL
% make
% grep -E '<div class="notebox">|Use this template to' html/sandbox.html
% touch doc/sandbox/New_blog_entry.mdwn          # sandbox inlines this
% make
% grep -E '<div class="notebox">|Use this template to' html/sandbox.html

Good result: html/sandbox.html contains <div class="notebox"> both times

Bad result: html/sandbox.html contains "Use this template to..." the
second time
2015-06-08 23:47:14 +01:00
Bundle add XML::Writer suggestion for osm plugin 2012-03-03 12:28:24 -04:00
IkiWiki Revert "Assume that every page has been scanned by the time the scan phase ends" 2015-06-08 23:47:14 +01:00
cpan enhancesments for shared hosting 2008-05-05 14:51:26 -04:00
debian Make the attachment plugin work with CGI.pm 4.x (Closes: #786586; workaround for #786587 in libcgi-pm-perl) 2015-06-07 14:51:13 +01:00
doc 2015-06-07 17:55:32 -04:00
icons Replace Verisign logo with one done in Inkscape 2014-02-14 12:27:18 +00:00
plugins plugins/proxy.py: be compatible with Python 3 2014-09-04 11:42:05 +01:00
po crufty po updates 2015-05-14 10:44:09 -04:00
t t/inline.t: accept translations of "Add a new post titled:" (Closes: #779365) 2015-03-01 17:15:13 +00:00
templates tweak wording 2015-05-13 23:07:07 -04:00
themes More page layout adjustments for mobile browsers and small windows 2014-12-01 21:29:46 +00:00
underlays rename icon instead of changing the Javascript 2015-05-27 09:03:34 +01:00
.gitattributes auto changelog merging 2010-06-25 13:43:02 -04:00
.gitignore add ikiwiki-comment program 2014-10-20 12:08:07 -04:00
.perlcriticrc fix a common case typo 2008-08-12 15:48:44 -04:00
CHANGELOG * Work on firming up the plugin interface: 2006-09-09 22:50:27 +00:00
IkiWiki.pm Do not directly enable emailauth by default, only indirectly via openid 2015-05-27 08:52:01 +01:00
Makefile.PL Standardize on --long-option instead of -long-option 2015-03-01 16:15:01 +00:00
NEWS * Work on firming up the plugin interface: 2006-09-09 22:50:27 +00:00
README parameterize FIND and SED 2010-09-27 16:10:13 -04:00
auto-blog.setup Standardize on --long-option instead of -long-option 2015-03-01 16:15:01 +00:00
auto.setup allow adminuser to be an email address 2015-05-13 23:07:29 -04:00
docwiki.setup disable openid when building doc dir 2010-05-15 23:24:57 -04:00
gitremotes gitremotes: don't fetch the new remote until we've turned off tags 2010-05-09 16:44:47 +01:00
ikiwiki-calendar.in Standardize on --long-option instead of -long-option 2015-03-01 16:15:01 +00:00
ikiwiki-comment.in Optionally accept and emit comments' url/email/ip. 2014-12-28 10:02:26 -05:00
ikiwiki-makerepo remove /recentchanges from .gitignore 2011-12-24 19:43:16 -04:00
ikiwiki-mass-rebuild Standardize on --long-option instead of -long-option 2015-03-01 16:15:01 +00:00
ikiwiki-transition.in Add preprocessed 'use lib' line to ikiwiki-transition and ikiwiki-calendar if necessary for unusual install. 2010-03-26 13:11:02 -04:00
ikiwiki-update-wikilist update ikiwiki-update-wikilist docs to suggest putting it in /etc/sudoers 2012-08-09 11:48:30 -04:00
ikiwiki-w3m.cgi * Support a w3mmode, which lets w3m run ikiwiki using its local CGI 2006-07-07 21:00:48 +00:00
ikiwiki.in Standardize on --long-option instead of -long-option 2015-03-01 16:15:01 +00:00
ikiwiki.spec crufty po updates 2015-05-14 10:44:09 -04:00
mdwn2man sync mdwn2man changes from git-annex 2010-12-10 17:36:39 -04:00
pm_filter remove -T from ikiwiki.in, add back if NOTAINT=0 2009-05-22 13:46:07 -04:00
wikilist Standardize on --long-option instead of -long-option 2015-03-01 16:15:01 +00:00

README

Use ./Makefile.PL to generate a Makefile, "make" will build the
documentation wiki and a man page, and "make install" will install ikiwiki.

All other documentation is in the ikiwiki documentation wiki, which is also
available online at <http://ikiwiki.info/>


A few special variables you can set while using the Makefile.PL:

  PROFILE=1 turns on profiling for the build of the doc wiki.
  (Uses Devel::NYTProf)

  NOTAINT=0 turns on the taint flag in the ikiwiki program. (Not recommended
  unless your perl is less buggy than mine -- see
  http://bugs.debian.org/411786)

  MAKE, FIND, and SED can be used to specify where you have the GNU
  versions of those tools installed, if the normal make, find, and sed
  are not GNU.

  There are also other variables supported by MakeMaker, including PREFIX,
  INSTALL_BASE, and DESTDIR. See ExtUtils::MakeMaker(3).

  In particular, INSTALL_BASE is very useful if you want to install ikiwiki
  to some other location, as it configures it to see the perl libraries
  there. See `doc/tips/nearlyfreespeech.mdwn` for an example of using this to
  install ikiwiki and its dependencies in a home directory.