summaryrefslogtreecommitdiff
path: root/output.c
diff options
context:
space:
mode:
authorthing1 <thing1@seacrossedlovers.xyz>2025-04-08 09:53:29 +0100
committerthing1 <thing1@seacrossedlovers.xyz>2025-04-08 09:53:29 +0100
commit2ebbe89ddf64a1cdaea65b4d49ffe668c6577e00 (patch)
tree45f0b0d95d8959c951fe614ccb81e35e33291a95 /output.c
parent39b1d95bcdb6f6dfe17186a05798084234d0cc24 (diff)
made some additions that allow for better outputing of dataHEADmaster
Diffstat (limited to 'output.c')
-rw-r--r--output.c32
1 files changed, 25 insertions, 7 deletions
diff --git a/output.c b/output.c
index fc7eb28..c42015c 100644
--- a/output.c
+++ b/output.c
@@ -1,9 +1,9 @@
#include <stdio.h>
+#include <stdbool.h>
+#include <string.h>
#include "tokens.h"
-
-extern token tokens[1024];
-extern int tokcount;
+#include "opts.h"
void printashtml(token t) {
char *start, *end;
@@ -18,11 +18,29 @@ void printashtml(token t) {
void printasgn(token t) {
char *start, *end;
+ bool p = (m & PRETTY) == PRETTY;
switch (t.type) {
- case HEADING: start = "* "; end = " *"; break;
- case DATE: start = " ["; end = "]"; break;
- case TODO: start = " {"; end = "}\n"; break;
- case BULLET: start = "- "; end = "\n"; break;
+ case HEADING:
+ start = (p) ? "\e[1m*" : "*";
+ end = (p) ? "* \e[0m" : " *";
+ break;
+ case DATE:
+ start = (p) ? "\e[4m[" : "[";
+ end = (p) ? "]\e[0m " : "] ";
+ break;
+ case TODO:
+ if (strcmp(t.data, "done") == 0) {
+ start = (p) ? "\x1B[32m\e[2m{" : "{";
+ end = (p) ? "}\n\x1B[31m\e[0m\e[0m" : "}\n";
+ } else {
+ start = (p) ? "\x1B[31m\e[2m{" : "{";
+ end = (p) ? "}\n\x1B[31m\e[0m\e[0m" : "}\n";
+ }
+ break;
+ case BULLET:
+ start = (p) ? "\e[3m- " : "- ";
+ end = (p) ? "\n\e[0m" : "\n";
+ break;
}
printf("%s%s%s", start, t.data, end);
}