support for comments to ignore lines
use # as first character in a line to skip this line from the slides.
This commit is contained in:
parent
da320f9c49
commit
bf1151c51a
1
example
1
example
@ -7,5 +7,6 @@ no bloat
|
||||
how?
|
||||
sent FILENAME
|
||||
one slide per line
|
||||
# comments
|
||||
@FILE.png
|
||||
thanks / questions?
|
||||
|
7
sent.c
7
sent.c
@ -440,19 +440,22 @@ void load(FILE *fp)
|
||||
{
|
||||
static size_t size = 0;
|
||||
char buf[BUFSIZ], *p;
|
||||
size_t i;
|
||||
size_t i = slidecount;
|
||||
|
||||
/* read each line from stdin and add it to the item list */
|
||||
for (i = slidecount; fgets(buf, sizeof(buf), fp); i++) {
|
||||
while (fgets(buf, sizeof(buf), fp)) {
|
||||
if ((i+1) * sizeof(*slides) >= size)
|
||||
if (!(slides = realloc(slides, (size += BUFSIZ))))
|
||||
eprintf("cannot realloc %u bytes:", size);
|
||||
if (*buf == '#')
|
||||
continue;
|
||||
if ((p = strchr(buf, '\n')))
|
||||
*p = '\0';
|
||||
if (!(slides[i].text = strdup(buf)))
|
||||
eprintf("cannot strdup %u bytes:", strlen(buf)+1);
|
||||
if (slides[i].text[0] == '@')
|
||||
slides[i].img = pngopen(slides[i].text + 1);
|
||||
i++;
|
||||
}
|
||||
if (slides)
|
||||
slides[i].text = NULL;
|
||||
|
Loading…
Reference in New Issue
Block a user