diff options
Diffstat (limited to 'tools/crlf.c')
-rw-r--r-- | tools/crlf.c | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/tools/crlf.c b/tools/crlf.c new file mode 100644 index 000000000..f81f77e69 --- /dev/null +++ b/tools/crlf.c @@ -0,0 +1,44 @@ +/* crlf.c + */ + +#include <stdio.h> + +int +main(int argc, char **argv) +{ + int c, lc; + int off=0; + + if( argc > 1 ) { + fprintf(stderr, "no arguments, please\n"); + return 1; + } + + lc = -1; + while( (c=getchar()) != EOF ) { + #if 0 + if( c == '\r' && lc == ' ' ) + fprintf(stderr,"SP,CR at %d\n", off ); + if( c == '\n' && lc == ' ' ) + fprintf(stderr,"SP,LF at %d\n", off ); + #endif + if( c == '\n' && lc == '\r' ) + putchar(c); + else if( c == '\n' ) { + putchar('\r'); + putchar(c); + } + else if( c != '\n' && lc == '\r' ) { + putchar('\n'); + putchar(c); + } + else + putchar(c); + + lc = c; + off++; + } + + return 0; +} + |