moving to lua-based generator
This commit is contained in:
parent
c4ad94e8f9
commit
0458ac2ac7
|
@ -4,7 +4,6 @@ web/*
|
||||||
gem/*
|
gem/*
|
||||||
src/pages.gmo
|
src/pages.gmo
|
||||||
tmp/*
|
tmp/*
|
||||||
generador
|
|
||||||
gemtest
|
gemtest
|
||||||
webtest
|
webtest
|
||||||
src/log.gmo
|
src/log.gmo
|
||||||
|
|
28
README.md
28
README.md
|
@ -1,27 +1,25 @@
|
||||||
# compudanzas
|
# compudanzas
|
||||||
|
|
||||||
this repository contains the scripts and source files for the compudanzas site in gemini and the web
|
this repository contains the script and source files for the compudanzas site in gemini and the web
|
||||||
|
|
||||||
* generated in web/ : [https://compudanzas.net](https://compudanzas.net)
|
* generated in web/ : [https://compudanzas.net](https://compudanzas.net)
|
||||||
* generated in gem/ : [gemini://compudanzas.net](gemini://compudanzas.net/)
|
* generated in gem/ : [gemini://compudanzas.net](gemini://compudanzas.net/)
|
||||||
|
|
||||||
# generate site
|
# generate site
|
||||||
|
|
||||||
call the shell script:
|
the generator script requires lua.
|
||||||
|
|
||||||
```
|
it was developed using lua 5.3.3 but it probably works with previous versions.
|
||||||
./generasitio.sh
|
|
||||||
|
in order to call the script and build the site:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
$ lua generasitio.lua
|
||||||
```
|
```
|
||||||
|
|
||||||
# files
|
## archive
|
||||||
|
|
||||||
* `generasitio.sh`: the shell script that copies files and call the other scripts with the corresponding arguments (like last modified date)
|
the `etc/generador/` directory contains the previous generator files and `README.md`, written in bash, awk and python.
|
||||||
* `gemtext2html.awk`: converts the files in .gmo format (modified .gmi) to an html version, according to the spec and my own taste
|
|
||||||
* `gmo2gmi.awk`: converts the files in .gmo format to real .gmi
|
|
||||||
* `genindice.awk`: generates the index of all pages
|
|
||||||
* `links.py`: calculates the incoming links between pages and adds them to the files
|
|
||||||
* `genlog.awk`: generates the log files (atom, twtxt, gemsub) from `src/log.txt`
|
|
||||||
* `gmo.nanorc`: syntax highlighting for .gmo format in nano
|
|
||||||
|
|
||||||
# .gmo format
|
# .gmo format
|
||||||
|
|
||||||
|
@ -87,12 +85,6 @@ converted to gemtext:
|
||||||
=> ./references.gmi references
|
=> ./references.gmi references
|
||||||
```
|
```
|
||||||
|
|
||||||
## incoming links calculation
|
|
||||||
|
|
||||||
`links.py` takes both of those types of wikilinks in order to perform its calculation.
|
|
||||||
|
|
||||||
it looks at the contents between the curly brackets, converts them to a filename format (replacing spaces for underscores), and assummes that file actually exists.
|
|
||||||
|
|
||||||
# license
|
# license
|
||||||
|
|
||||||
[peer production license](https://wiki.p2pfoundation.net/Peer_Production_License)
|
[peer production license](https://wiki.p2pfoundation.net/Peer_Production_License)
|
||||||
|
|
|
@ -0,0 +1,98 @@
|
||||||
|
# compudanzas
|
||||||
|
|
||||||
|
this repository contains the scripts and source files for the compudanzas site in gemini and the web
|
||||||
|
|
||||||
|
* generated in web/ : [https://compudanzas.net](https://compudanzas.net)
|
||||||
|
* generated in gem/ : [gemini://compudanzas.net](gemini://compudanzas.net/)
|
||||||
|
|
||||||
|
# generate site
|
||||||
|
|
||||||
|
call the shell script:
|
||||||
|
|
||||||
|
```
|
||||||
|
./generasitio.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
# files
|
||||||
|
|
||||||
|
* `generasitio.sh`: the shell script that copies files and call the other scripts with the corresponding arguments (like last modified date)
|
||||||
|
* `gemtext2html.awk`: converts the files in .gmo format (modified .gmi) to an html version, according to the spec and my own taste
|
||||||
|
* `gmo2gmi.awk`: converts the files in .gmo format to real .gmi
|
||||||
|
* `genindice.awk`: generates the index of all pages
|
||||||
|
* `links.py`: calculates the incoming links between pages and adds them to the files
|
||||||
|
* `genlog.awk`: generates the log files (atom, twtxt, gemsub) from `src/log.txt`
|
||||||
|
* `gmo.nanorc`: syntax highlighting for .gmo format in nano
|
||||||
|
|
||||||
|
# .gmo format
|
||||||
|
|
||||||
|
the same format as gmi (gemtext), but with the following line types:
|
||||||
|
|
||||||
|
* `+` add this line to the html file but not to the gmi file
|
||||||
|
* `&` add this line to the gmi file but not to the html file
|
||||||
|
|
||||||
|
# wikilinks
|
||||||
|
|
||||||
|
## inline wikilinks
|
||||||
|
|
||||||
|
the generator can parse and convert inline {wikilinks}, as many as needed per line
|
||||||
|
|
||||||
|
* in html, they get converted to an inline link
|
||||||
|
* in gemtext, the links are added after the line with the text
|
||||||
|
|
||||||
|
.gmo text:
|
||||||
|
|
||||||
|
```
|
||||||
|
see the {roadmap} for updates that want to happen.
|
||||||
|
```
|
||||||
|
|
||||||
|
converted to html:
|
||||||
|
|
||||||
|
```html
|
||||||
|
<p>
|
||||||
|
see the <a href='./roadmap.html'>roadmap</a> for updates that want to happen.
|
||||||
|
</p>
|
||||||
|
```
|
||||||
|
|
||||||
|
converted to gemtext:
|
||||||
|
|
||||||
|
```gemtext
|
||||||
|
see the roadmap for updates that want to happen.
|
||||||
|
=> ./roadmap.gmi roadmap
|
||||||
|
```
|
||||||
|
|
||||||
|
spaces inside the wikilinks are converted to underscores.
|
||||||
|
|
||||||
|
## gemtext-like wikilinks
|
||||||
|
|
||||||
|
the generator can also parse normal links in gemtext, one per line
|
||||||
|
|
||||||
|
* in html, it gets converted to an inline link
|
||||||
|
* in gemtext, the link is left as is
|
||||||
|
|
||||||
|
.gmo text:
|
||||||
|
|
||||||
|
```
|
||||||
|
=> ./references.gmi {references}
|
||||||
|
```
|
||||||
|
|
||||||
|
converted to html:
|
||||||
|
|
||||||
|
```html
|
||||||
|
<p><a href='./references.html'>references</a></p>
|
||||||
|
```
|
||||||
|
|
||||||
|
converted to gemtext:
|
||||||
|
|
||||||
|
```
|
||||||
|
=> ./references.gmi references
|
||||||
|
```
|
||||||
|
|
||||||
|
## incoming links calculation
|
||||||
|
|
||||||
|
`links.py` takes both of those types of wikilinks in order to perform its calculation.
|
||||||
|
|
||||||
|
it looks at the contents between the curly brackets, converts them to a filename format (replacing spaces for underscores), and assummes that file actually exists.
|
||||||
|
|
||||||
|
# license
|
||||||
|
|
||||||
|
[peer production license](https://wiki.p2pfoundation.net/Peer_Production_License)
|
Loading…
Reference in New Issue