all repos — eureka @ 77b6102e84ecbf1bf06e6f04b784b9a9539dc4e7

static site generator based on the 100r.co engine

add video templating
Iris Lightshard nilix@nilfm.cc
PGP Signature
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEkFh6dA+k/6CXFXU4O3+8IhROY5gFAmMCkvsACgkQO3+8IhRO
Y5j1wg/+Lfu58TZd5xvrxusXCTktGjLfzuPMJ+IvokFM7BaaLfLM2kt+bsTKpPDz
ZA9hLOwhzkhj/Zpi0j0slKctD9ozwAvNcKrCMwObZRGNtQ6YKPe/KF5mqO389YZL
eWD8WE3Q2tZbCZqPAmUjtplquEzySWoVt3G0aYzhZTJ3BD2ixBAYbuDQ/HO750qV
Gc6aJlVkL+5gAuCdO7smcYdfIm+ENzphMLcxMzUYsJlqstjolbBgo4wWF0vjgy5K
jEPxzzV4zyBUTYtfNU2BEEM24+AZUhwA6JSAwOFncx1eg/0jFxubfRiKZiUJOyPY
mkFhHm3pvdKc44NW6W6j2StLAUOqqP2mtMbFc8jD5Szw9wTJ9qYe5RLyR3PU8/0Z
63fUvtC2+FRJ4wNzQIXLdLPHIiD2bX0pT5MJwJ/JN8qY2LDZ+R8MkD7IxnrbeiSU
zoU3rqTgjLEAlTFd3ixWhn3vfvNz+FJFWZKyXbXa0zEK3quFL8hURUz7SwPySyA6
LSH+S7yvBddW7iwzIP6rMtdAjj4NwGe5/o5t5wEYcGUymZcRqk32PhTNE176kMJr
VCnrsSLkNe7C9yi5PDjqXiIrrSeZ9+ZtC7jwXvhp5puqcGaZTw9/t/9KuTKopaCs
NZTUDe9U+WKVNmJ0EHDaqLmz8fxV0NZt/2rSmDSVYEsUR5Y7Nas=
=Gy3c
-----END PGP SIGNATURE-----
commit

77b6102e84ecbf1bf06e6f04b784b9a9539dc4e7

parent

8cdc1fc8782150c892fed4111255ff52573d3858

1 files changed, 45 insertions(+), 0 deletions(-)

jump to
M main.cmain.c

@@ -255,6 +255,49 @@ fputs("</a>\n", f);

return 1; } +int fpvideo(FILE* f, char* s) { + char id[1024] = {0}; + char href[1024] = {0}; + char src[1024] = {0}; + char alt[1024] = {0}; + char thumb[1024] = {0}; + + char* c = s; + int i = 0; + while (i < 4) { + if (*c == '|' || !(*c)) { + i++; + c++; + continue; + } + switch (i) { + case 0: + ccat(id, *c++); + break; + case 1: + ccat(href, *c++); + break; + case 2: + ccat(src, *c++); + break; + case 3: + ccat(alt, *c++); + break; + } + } + thumbtrans(src, thumb); + + fprintf( + f, + "<video id='%s' src='%s' controls preload='metadata' poster='%s'>\n", + id, + href, + thumb); + fprintf(f, "<a href='%s'>%s</a>\n", href, alt); + fprintf(f, "</video>\n"); + return 1; +} + int fpaudio(FILE* f, char* s) { fputs("<audio class='player' preload='metadata' controls>\n", f); fprintf(

@@ -378,6 +421,8 @@ case ':':

return fpimg(f, s + 1); case '?': return fphimg(f, s + 1); + case ']': + return fpvideo(f, s + 1); case '_': return fpaudio(f, s + 1); case '`':