Differences From
Artifact [10143aaa34]:
11 11 ## dependencies
12 12 tsunami's only dependency is a working Perl 5 installation.
13 13
14 14 ## directory hierarchy
15 15 the first thing to understand is how your tsunami project is laid out. its root directory contains three folders (`src`, `cfg`, and `out`) and the scripts `pub.pl` and `up.sh`.
16 16
17 17 the `src` directory contains your *input files*. in other words, whenever you want to add something to the site, you'll do it by putting it in here. by default, it also contains the `doc` directory, which holds this documentation. you may want to move it somewhere else before you publish your real site, but leaving it in place won't do any harm.
18 +
18 19 * *see: [input files](input-files.html)*
19 20
20 21 the `cfg` directory contains top-level configuration for the site. currently the only items here are `links` and `sitename`. both of these files can contain *comments*, which are text ignored by the software that builds the site. a line can be marked as a comment by starting it with whitespace (spaces or tabs). blank lines are ignored.
21 22
22 23 * `links` is used to change the contents of the navigation bar just under the header. take a look at the file for a more detailed explanation of how to use it.
23 24 * `sitename` contains one or two lines, a title and a subtitle for the site. these are printed at the top of every page.
24 25
25 26 `out` only exists if you have run `pub.pl` at least once. it contains a generated site ready to upload. **never edit files in `out`!** any changes you make will be overwritten as soon as you regenerate the site.
26 27
27 28 ## build script
28 29 the program that examines the input files and generates a site from them is `pub.pl`. whenever you change the configuration or the contents of `src`, you can run `pub.pl` to update `out` to reflect the changes.
30 +
29 31 * *see: [using pub.pl](using-pub.html)*
30 32
31 33 whenever you run `pub.pl`, it iterates over everything in `src` and builds a matching directory tree in `out`. it populates this tree with the “compiled” form of each file it finds. see [input files](input-files.html) for more information on this process.
32 34
33 35 `pub.pl` is the core of the toolchain and is the only thing you need to start a new tsunami project, as long as you remember to put the configuration and input files in the right place.
34 36
35 37 ## upload script
36 38 the file `up.sh` is a script that automates [uploading your site](upload.html) to GitHub Pages.