diff options
Diffstat (limited to 'sdk/other/expand.c')
-rw-r--r-- | sdk/other/expand.c | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/sdk/other/expand.c b/sdk/other/expand.c new file mode 100644 index 0000000..8005957 --- /dev/null +++ b/sdk/other/expand.c @@ -0,0 +1,36 @@ +/* + * String expansion and normalization of 'plain text' line data. + * $Id$ + * Copyright (c) 1997 by Tycho Softworks. + * For conditions of distribution and reuse see product license. + */ + +#include <std/string.h> + +char *expand(const char *s) +{ + static char buf[320]; + + int pos = 0; + + while(*s) + { + if(*s == '\t') + { + buf[pos++] = ' '; + while(pos % 8) + buf[pos++] = ' '; + } + else if (*s > 31) + buf[pos++] = *s; + else + { + buf[pos++] = '^'; + buf[pos++] = *s + '@'; + } + ++s; + } + buf[pos] = 0; + return buf; +} + |