summaryrefslogtreecommitdiff
path: root/doc/plugins/contrib/texinfo.mdwn
blob: 07e506948206c80aabe76cdb63e3925072343e13 (plain)

[[I|tschwinge]] started writing a plugin to render Texinfo inside the ikiwiki environment.

The plugin is available at http://www.schwinge.homeip.net/~thomas/tmp/texinfo.pm.

It's very basic at the moment, but will be improved over time.

Issues

N-to-M Mapping of Input and Output Files

Conventional ikiwiki [[htmlizeing|plugins/write#index6h3]] plugins have a one-to-one mapping of input file and output file: some/where/page.mdwn is rendered to some/where/page.html. This can also be achieved for Texinfo files, but is somewhat unusual there, when rendering them to HTML. In general, there is a N-to-M mapping:

  • N Texinfo input files (a main .texi file, several helper files (fdl.texi, version.texi, ...), and additional text files which are included from the main .texi file, e.g. history.texi, libfoo.texi, libbar.texi.
  • M Texinfo output files: the main .texi file (which includes the other input files) is usually rendered into a (flat) hierarchy of HTML files, one file per node, see the table on http://www.gnu.org/software/texinfo/manual/texinfo/html_node/#Top for an example.

How to teach this to ikiwiki?

Copyright and Licensing Snippets

ikiwiki (obviously) doesn't understand (parse) the copyright and licensing statements which are included in .texi files.

makeinfo Output

makeinfo --html is being used for rendering. It creates stand-alone HTML files, while ikiwiki only needs the files' <body>s.