aboutsummaryrefslogtreecommitdiff
path: root/toys/other
diff options
context:
space:
mode:
authorRob Landley <rob@landley.net>2014-12-23 13:29:47 -0600
committerRob Landley <rob@landley.net>2014-12-23 13:29:47 -0600
commit677c1b5b4051288a75db1ec24ce38f0067ca80af (patch)
tree7522c14bcdba9758256d99ec6747866bae73c0fb /toys/other
parent9b5000c920f2ba44dea1ef45f3a23191d46489b8 (diff)
downloadtoybox-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')
-rw-r--r--toys/other/catv.c67
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);
-}