summaryrefslogtreecommitdiff
path: root/spacify.c
diff options
context:
space:
mode:
Diffstat (limited to 'spacify.c')
-rw-r--r--spacify.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/spacify.c b/spacify.c
new file mode 100644
index 0000000..a02ba31
--- /dev/null
+++ b/spacify.c
@@ -0,0 +1,19 @@
+#include <stdio.h>
+#include <stdlib.h>
+
+int main(int argc,char *argv[]) {
+ int in,i,left,col=0,tabsize=8;
+ for(left=0;(in=fgetc(stdin)) != -1;left++) {
+ if(in == '\t') {
+ col++;
+ if(argc > col) tabsize=atoi(argv[col]);
+ if(!tabsize) tabsize=8;//they did something dumb. force it to not do that.
+ for(i=left%tabsize;i<tabsize;i++) putchar(' ');
+ left=-1;
+ continue;
+ }
+ if(in == '\n') { left=-1; col=0; }
+ putchar(in);
+ }
+ return 0;
+}