diff options
author | Rob Landley <rob@landley.net> | 2014-12-23 13:29:47 -0600 |
---|---|---|
committer | Rob Landley <rob@landley.net> | 2014-12-23 13:29:47 -0600 |
commit | 677c1b5b4051288a75db1ec24ce38f0067ca80af (patch) | |
tree | 7522c14bcdba9758256d99ec6747866bae73c0fb /toys/other/catv.c | |
parent | 9b5000c920f2ba44dea1ef45f3a23191d46489b8 (diff) | |
download | toybox-677c1b5b4051288a75db1ec24ce38f0067ca80af.tar.gz |
Merge catv back into cat as discussed on the list. Add comments about infrastructure upgrades needed to restore separate catv option.
Diffstat (limited to 'toys/other/catv.c')
-rw-r--r-- | toys/other/catv.c | 67 |
1 files changed, 0 insertions, 67 deletions
diff --git a/toys/other/catv.c b/toys/other/catv.c deleted file mode 100644 index 62520c41..00000000 --- a/toys/other/catv.c +++ /dev/null @@ -1,67 +0,0 @@ -/* cat -v implementation for toybox - * - * Copyright (C) 2006, 2007 Rob Landley <rob@landley.net> - * - * See "Cat -v considered harmful" at - * http://cm.bell-labs.com/cm/cs/doc/84/kp.ps.gz - -USE_CATV(NEWTOY(catv, "vte", TOYFLAG_USR|TOYFLAG_BIN)) - -config CATV - bool "catv" - default y - help - usage: catv [-evt] [filename...] - - Display nonprinting characters as escape sequences. Use M-x for - high ascii characters (>127), and ^x for other nonprinting chars. - - -e Mark each newline with $ - -t Show tabs as ^I - -v Don't use ^x or M-x escapes. -*/ - -#define FOR_catv -#include "toys.h" - -// Callback function for loopfiles() - -static void do_catv(int fd, char *name) -{ - for(;;) { - int i, len; - - len = read(fd, toybuf, sizeof(toybuf)); - if (len < 0) toys.exitval = EXIT_FAILURE; - if (len < 1) break; - for (i=0; i<len; i++) { - char c=toybuf[i]; - - if (c > 126 && (toys.optflags & FLAG_v)) { - if (c > 127) { - printf("M-"); - c -= 128; - } - if (c == 127) { - printf("^?"); - continue; - } - } - if (c < 32) { - if (c == 10) { - if (toys.optflags & FLAG_e) xputc('$'); - } else if (toys.optflags & (c==9 ? FLAG_t : FLAG_v)) { - printf("^%c", c+'@'); - continue; - } - } - xputc(c); - } - } -} - -void catv_main(void) -{ - toys.optflags ^= FLAG_v; - loopfiles(toys.optargs, do_catv); -} |