Hypertext sites generator
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Miraty 450299e95a Use current directory if no arguments provided 1 month ago
less.php Initialize repository 2 months ago
parsedown Initialize repository 2 months ago
parsedown-extra Initialize repository 2 months ago
LICENSE Initialize repository 2 months ago
README.md Add lang in config.ini 2 months ago
mkht.php Use current directory if no arguments provided 1 month ago
style.less Add lang in config.ini 2 months ago

README.md

mkht.php is a PHP script for building Gemini, Markdown and HTML/CSS sites from source documents in Gemini, Markdown Extra, HTML, PHP, CSS and Less.

Usage

Place your pages tree in /src/*/*.(gmi|md).

Optionnal files:

  • /config.ini
  • /style.less
  • /logo.png
  • /head.inc.html
  • /footer.inc.html

mkht.php <site path> <destination>

destination is optionnal and can be:

  • dns if you want local links without exensions
  • onion if you want links ending with .onion when available

Input

Pages in /srccan use Gemini (if using gmi extension), Markdown, HTML and PHP.

Output

  • /*/*.gmi (if using .gmi extension in /src)
  • /*/*.md
  • /*/*.html
  • /*/*.gz

Note that format translation is only done in the following order: Gemini > Markdown > HTML, which means that the last of these formats you will use will be the first that will be readable by hypertext browsers. (PHP is executed before.)

External dependencies

  • PHP
  • gzip
  • find

Internal libraries used

Name Description Repository
less.php Less compiler in PHP https://github.com/wikimedia/less.php
parsedown Markdown compiler in PHP https://github.com/erusev/parsedown
parsedown-extra Extension for Markdown Extra https://github.com/erusev/parsedown-extra

License

AGPLv3+

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see https://www.gnu.org/licenses/.