Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

A simple static site generator

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 examples
Octocat-spinner-32 README.pod
Octocat-spinner-32 body.md
Octocat-spinner-32 config
Octocat-spinner-32 contact.png
Octocat-spinner-32 footer.md
Octocat-spinner-32 index.html
Octocat-spinner-32 nav.md
Octocat-spinner-32 plexus.pl
Octocat-spinner-32 rsync.ignore
README.pod

NAME

plexus.pl - A Perl-based static site generator.

SYNOPSIS

        plexus.pl [OPTIONS]

DEPENDENCIES

  • perl - version 5.10 or above
  • Config::File - Debian: libconfig-file-perl
  • Text::Markdown - Debian: libtext-markdown-perl

DESCRIPTION

In Latin, plexus means "twisted" or "woven". plexus.pl takes a bunch of simple, modularized files and weaves them into a static web page ( so, OK, maybe it should be called plecto or better yet, since it's a command, plecte ). I'll be referring to the script "plexus.pl" simply as "plexus" for the rest of this documentation.

At the time of writing, 04 August 2011, plexus is far from completion and not really even ready for testing. Use at your own risk.

How it works

Plexus starts out by determining the working directory. This is either the first command-line argument ( $ARGV[0] ) or, if no argument is supplied, the current directory ( $ENV{PWD} ). Next, File::Find is used to make a list of all non-hidden directories inside the working directory. Plexus then descends into each of these directories and weaves a web page using the special files below.

Future versions will have an option to generate a site-map ( using all *.html files found inside the top directory ) and a "recent posts" list for blogs.

FILES

Use .md for Markdown files. They will be formatted to HTML by the script. Files ending in .htm, .html, .xhtml, or .xml will be copied verbatim. Don't include the tag in the file where the content will go, though. For example, omit <body> from your body.html file. Files that are treated specially by plexus.pl include:

config

Default config file location, using Config::File.

footer.EXT

Inserted at the bottom of <body> as <footer> ( only useful if doctype = h5 in config )

head.css

code to be included in the head.

head.js

JavaScript code to be included in the head.

nav.EXT

Inserted at the top of body as <nav>

SEE ALSO

perldoc, Config::File,Config::YAML.

COPYRIGHT

Copyright 2011 Daniel Bolton.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 3.0 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts.

THANKS

Special thanks to tornow ( https://github.com/tornow ) for testing plexus.pl and offering suggestions.

Something went wrong with that request. Please try again.