2.1 KiB
2.1 KiB
Gmirator
This tool was made so I could write my content only in gmi
and publish both a
gemini capsule and a website.
For now, this is very rudimentary and things are bound to change... and break from version to version.
Features
- generates HTML from gemtext
- can synchronise your files with your server using rsync
Notes on usage
Good practice for gemini dictates that we don't use multiple h1
titles in one page
and for that reason, the last (and therefore the first) h1
title encountered will
be used as the title of the HTML page.
TODO
- concatenate header + gmi2html + footer
- allow some special characters to start a
<p>
- like the
*
for emphasis or~~
for a strikethrough
- like the
- write the
gen_gmi
function - make the line "---\n" of the footer only present in the code, not in the footer file
- make a config file for things like
- certain variables should be made
CONSTANT
in the__init__.py
- certain variables should be made
- also update the "/gemlog/index.gmi" with the list of articles
- write the sync features
- test the
gen gmi
andgen html
features- write tests for it
- move config file to
~/.config
with placeholder values- check for a config file in
~/.config
- check for a config file in
- maybe save the old Bash script somewhere for posterity ?
- reorganise the directory where the content is
- replace
print
s withlogging
- make a call graph
- rewrite
process_file
to make it easier to test
My setup
My current folder structure for my capsule+website looks something like this:
myinternet
├── assets
│ ├── favicon.ico
│ └── style.css
├── content
│ ├── gemlog
│ │ └── index.gmi
│ ├── index.gmi
│ └── projects.gmi
├── gmi-helper
│ └── footer.gmi
├── html-helper
│ ├── footer-part.html
│ └── header-part.html
├── README.md
└── web
├── favicon.ico
├── gemlog
│ └── index.html
├── index.html
├── projects.html
└── style.css
This is only meant as a reference if my code isn't clear enough and had too much implicits