From 69ea054270bc43c00937015b78378de9dc649602 Mon Sep 17 00:00:00 2001 From: "C. McEnroe" Date: Sun, 26 Sep 2021 13:00:12 -0400 Subject: Use tiny UTF-8-aware col -b replacement OpenBSD col(1) doesn't understand UTF-8 and will delete all of it. Stupid, especially when mandoc(1) tells you to use it to remove man formatting. I shouldn't have to write something so trivial. --- www/text.causal.agency/.gitignore | 1 + www/text.causal.agency/Makefile | 6 +++--- www/text.causal.agency/colb.c | 16 ++++++++++++++++ 3 files changed, 20 insertions(+), 3 deletions(-) create mode 100644 www/text.causal.agency/colb.c diff --git a/www/text.causal.agency/.gitignore b/www/text.causal.agency/.gitignore index 8fe3acc9..66b3e637 100644 --- a/www/text.causal.agency/.gitignore +++ b/www/text.causal.agency/.gitignore @@ -1,3 +1,4 @@ *.txt +colb feed.atom igp diff --git a/www/text.causal.agency/Makefile b/www/text.causal.agency/Makefile index be1a4f1b..cf0207ff 100644 --- a/www/text.causal.agency/Makefile +++ b/www/text.causal.agency/Makefile @@ -30,12 +30,12 @@ TXTS += 024-seprintf.txt TXTS += 025-v6-pwd.txt TXTS += 026-git-comment.txt -all: ${TXTS} +all: colb ${TXTS} .SUFFIXES: .7 .txt .7.txt: - mandoc -T utf8 $< | col -bx > $@ + mandoc -T utf8 $< | ./colb > $@ feed.atom: feed.sh ${TXTS} sh feed.sh > feed.atom @@ -43,7 +43,7 @@ feed.atom: feed.sh ${TXTS} clean: rm -f ${TXTS} feed.atom igp -install: ${TXTS} feed.atom +install: colb ${TXTS} feed.atom install -p -m 644 ${TXTS} feed.atom ${WEBROOT} install-igp: igp diff --git a/www/text.causal.agency/colb.c b/www/text.causal.agency/colb.c new file mode 100644 index 00000000..5faabc3a --- /dev/null +++ b/www/text.causal.agency/colb.c @@ -0,0 +1,16 @@ +#include +#include +#include +int main(void) { + setlocale(LC_CTYPE, "en_US.UTF-8"); + wint_t next, prev = WEOF; + while (WEOF != (next = getwchar())) { + if (next == L'\b') { + prev = WEOF; + } else { + if (prev != WEOF) putwchar(prev); + prev = next; + } + } + if (prev != WEOF) putwchar(prev); +} -- cgit 1.4.1