ssnail.1 (2679B)
1 .\" Copyright (c) 2020 Paco Esteban <paco@e1e0.net> 2 .\" 3 .\" Permission to use, copy, modify, and distribute this software for any 4 .\" purpose with or without fee is hereby granted, provided that the above 5 .\" copyright notice and this permission notice appear in all copies. 6 .\" 7 .\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 8 .\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 9 .\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 10 .\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 11 .\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 12 .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 13 .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 14 .\" 15 .Dd June 16, 2020 16 .Dt SSNAIL 1 17 .Os 18 .Sh NAME 19 .Nm ssnail 20 .Nd crappy and opinionated static website generator 21 .Sh SYNOPSIS 22 .Nm 23 .Op Fl F 24 .Op Fl f Ar footer 25 .Op Fl h Ar header 26 .Op Fl i 27 .Op Fl r 28 .Fl t Ar title 29 .Fl u Ar main_url 30 .Op Fl v 31 .Ar src_folder 32 .Ar dst_folder 33 .Sh DESCRIPTION 34 .Nm 35 takes all Markdown files on 36 .Ar src_folder 37 and generates corresponding HTML files on 38 .Ar dst_folder . 39 It uses 40 .Xr lowdown 3 41 internally to do the conversion. 42 All other files are copied recursively. 43 Files are copied/generated only if they don't exist on destination or exist but 44 are newer on source. 45 It uses header and footer templates to generate the HTML files. 46 On the header, the strings 47 .Sq $title$ , 48 .Sq $author$ 49 and 50 .Sq $date$ 51 are replaced by the Markdown metadata. 52 On the footer, only the string 53 .Sq $title$ 54 is replaced. 55 It can also generate index and RSS files. 56 For a file to be included on the index and RSS, it has to have a 57 .Sq Type: article 58 on the Markdown metadata. 59 .Pp 60 The options are as follows: 61 .Bl -tag -width Ds 62 .It Fl F 63 Force copy/generate all files. 64 .It Fl f Ar footer 65 Footer HTML template. 66 .Pq defaults to _footer.html 67 .It Fl h Ar header 68 Header HTML template. 69 .Pq defaults to _header.html 70 .It Fl i 71 Generate index HTML file. 72 .It Fl r 73 Generate RSS file. 74 .It Fl t Ar title 75 Title of the website. 76 Required to generate index and RSS. 77 .It Fl u Ar main_url 78 Main url of the site. 79 Required. 80 .It Fl v 81 Prints version and exists. 82 .It Ar src_folder 83 Folder where all Markdown and other files are located. 84 Required. 85 .It Ar dst_folder 86 Folder where HTML will be generated and other files copied. 87 Required. 88 .El 89 .Sh EXIT STATUS 90 .Ex -std 91 .Sh AUTHORS 92 .An Paco Esteban 93 .Mt paco@e1e0.net 94 .Sh BUGS 95 Probably many. 96 Do not use this in production. 97 This is only an educational project to learn in how many different ways I can 98 shoot myself in the foot. 99 If you find horrors, send patches to: 100 .Mt patches@e1e0.net