#!/usr/bin/tcc -run /* vim: set syn=c: */ #include #include #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; }