# mkht.php 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)`. Optional files: * `/config.ini` * `/style.less` * `/logo.png` * `/head.inc.html` * `/footer.inc.html` `mkht.php ` `destination` is optionnal and can be: * `onion` if you want links ending with .onion when available ## Input Pages in `/src` can use Gemini (if using `gmi` extension), Markdown, HTML and PHP. Files starting with a dot or not ending in `.gmi`, `.md` or `.html` are ignored. Files containing `draft` in their name are ignored for Atom feeds. ## 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 always executed first.) ## Data persistence IDs are attributed to titles according to their content, therefor modifying a title breaks links to page sections. ### For atom feeds * Make sure modification timestamps of source files are preserved. For example, `cp --preserve=timestamps` must be used instead of just `cp` when backing up or migrating. * Renaming/moving a page creates a new page and delete the older. ## External dependencies * PHP * gzip * pandoc ## Internal libraries used | Name | Description | Repository | | --------------- | ---------------------------- | ----------------------------------------- | | less.php | Less compiler in PHP | https://github.com/wikimedia/less.php | ## License [AGPLv3+](LICENSE) 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 .