aboutsummaryrefslogtreecommitdiffstats
path: root/src/bin/pad.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/bin/pad.c')
-rw-r--r--src/bin/pad.c32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/bin/pad.c b/src/bin/pad.c
new file mode 100644
index 0000000..2f2ea13
--- /dev/null
+++ b/src/bin/pad.c
@@ -0,0 +1,32 @@
+#include <stdio.h>
+#include <string.h>
+
+int main(int argc,char *argv[]) {
+ short in;
+ int i=0;
+ int width=argc>1?atoi(argv[1]):80;
+ char with=argc>2?argv[2][0]:' ';
+ char *line=argc>3?argv[3]:0;
+ if(width <= 0) width=80;
+ if(!line) {
+ while((in=fgetc(stdin)) != -1) {
+ if(in == '\n') {
+ for(;i%width || i == 0;i++) {
+ putchar(with);
+ }
+ i=-1;
+ }
+ i++;
+ putchar(in);
+ }
+ } else {
+ i=strlen(line);
+ }
+ if(i != 0 || line) {
+ if(line) fputs(line,stdout);
+ for(;i%width || i == 0;i++) {
+ putchar(with);
+ }
+ }
+ return 0;
+}