diff options
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/README.md b/README.md new file mode 100644 index 0000000..96b23ce --- /dev/null +++ b/README.md | |||
@@ -0,0 +1,69 @@ | |||
1 | # shite | ||
2 | ## what it says on the tin | ||
3 | |||
4 | `shite` shits out a site using posix `sh`, `awk`, and `cp`---that's it. | ||
5 | Of course, it is shite. But it'll make a site. | ||
6 | |||
7 | ## use | ||
8 | |||
9 | make a site directory somewhere on your system and fill it with HTML files. | ||
10 | these can be just the body parts of these files---they will be enclosed with a | ||
11 | template, which is discussed below. you can also ignore enclosing paragraphs | ||
12 | with `<p>` tags---paragraphs not starting with `<` will automatically be | ||
13 | enclosed with them. | ||
14 | |||
15 | when you run `shite`, it will collect all HTML files, run them through various | ||
16 | templates, and shit them out into the `out/` directory in the site directory. | ||
17 | each page will be sent through `.template.html` and into `out/PAGE/index.html`, | ||
18 | where `PAGE` is the filename without `.html`. Then they'll be collected into an | ||
19 | index using `.index.html`, and into an RSS 2.0 feed using `.feed.xml`. | ||
20 | |||
21 | `.template.html`, `index.html`, and `.feed.xml` are treated as sh `heredocs`. | ||
22 | that is, any `$variable`, `$(function)`, or the like will be expanded. `title`, | ||
23 | `body`, and `pubdate` are provided for convenience; you can define others in | ||
24 | `.shite.sh`. a very simple template could look like this: | ||
25 | |||
26 | ``` | ||
27 | <!DOCTYPE html> | ||
28 | <title>$(title)</title> | ||
29 | $(body) | ||
30 | ``` | ||
31 | |||
32 | every other file in the site directory---that is, any file or directory that | ||
33 | isn't an HTML or XML file---will be copied to `out/` recursively, so go nuts! | ||
34 | |||
35 | ### installation | ||
36 | |||
37 | ``` | ||
38 | # make install | ||
39 | ``` | ||
40 | |||
41 | ### invocation | ||
42 | |||
43 | invoking `shite` is simple: | ||
44 | |||
45 | ``` | ||
46 | $ shite [-d DOMAIN] [-C DIRECTORY] | ||
47 | ``` | ||
48 | |||
49 | `DOMAIN` is your site's domain for the feed generator; the default is | ||
50 | the name of the site directory. `DIRECTORY` will change the directory before | ||
51 | generating a site, so you can run `shite` from anywhere. | ||
52 | |||
53 | ## license | ||
54 | |||
55 | Copyright (C) 2022 c. Duckworth and licensed under the Good Choices License. | ||
56 | See COPYING for details. | ||
57 | |||
58 | ## contributing | ||
59 | |||
60 | Send me an [email](mailto:shite+git@me.acdw) with comments, complaints, and | ||
61 | merge requests. if you want. | ||
62 | |||
63 | ## testimonials | ||
64 | |||
65 | > oh dang that is fancy | ||
66 | ~ m455 | ||
67 | |||
68 | > hehe, nah it's shite | ||
69 | ~ acdw | ||