tools/spacesbreak

42 lines
617 B
Text
Raw Normal View History

2016-10-04 23:52:17 +02:00
#!/usr/bin/tcc -run
/* vim: set syn=c: */
#include <stdlib.h>
#include <stdio.h>
#define WORD_BREAK " ()<>[]\""
static unsigned int is_word_break(char c);
int
main() {
char buffer, prevbuffer;
size_t nread;
while ((nread = fread(&buffer, 1, sizeof buffer, stdin)) > 0) {
if (is_word_break(buffer))
buffer = '\n';
if (buffer != '\n' || prevbuffer != '\n')
fwrite(&buffer, 1, nread, stdout);
prevbuffer = buffer;
}
return 0;
}
unsigned int
is_word_break(char c) {
static char *word_break = WORD_BREAK;
char *s = word_break;
while (*s) {
if (*s == c)
return 1;
s++;
}
return 0;
}