110559Sdlw /* 2*23040Skre * Copyright (c) 1980 Regents of the University of California. 3*23040Skre * All rights reserved. The Berkeley software License Agreement 4*23040Skre * specifies the terms and conditions for redistribution. 5*23040Skre */ 6*23040Skre 7*23040Skre /* 810559Sdlw * mkindx.c - utility to format a nice index to source files, etc. 910559Sdlw * 1010559Sdlw * usage: mkindx "title string" [file_name] [filename] ..... 1110559Sdlw */ 1210559Sdlw 1310559Sdlw # include <stdio.h> 1410559Sdlw 15*23040Skre char id_mkindx[] = "@(#)mkindx.c 5.1 06/07/85"; 1610559Sdlw 1710559Sdlw char list[10000] = "pwd >>index; echo \" \" >>index; ls -l "; 1810559Sdlw char *apndx = ">>index"; 1910559Sdlw char *cp = list; 2010559Sdlw extern char *ctime(); 2110559Sdlw FILE *fopen(), *index; 2210559Sdlw 2310559Sdlw main (argc, argv) 2410559Sdlw char **argv; 2510559Sdlw { 2610559Sdlw short i; 2710559Sdlw long time(), t; 2810559Sdlw 2910559Sdlw if (index = fopen ("index", "w")) 3010559Sdlw { 3110559Sdlw fprintf (index, "\n\n\n\n\n\n\n\n\n"); 3210559Sdlw center (argv[1]); /* center title on page */ 3310559Sdlw t = time(0); 3410559Sdlw center (ctime(&t)); /* center date & time */ 3510559Sdlw fprintf (index, "\n"); 3610559Sdlw fclose (index); 3710559Sdlw while (*cp) cp++; /* find end of shell command */ 3810559Sdlw for (i = 2; i < argc; i++) 3910559Sdlw { 4010559Sdlw while (*argv[i]) *cp++ = *(argv[i]++); 4110559Sdlw *cp++ = ' '; 4210559Sdlw } 4310559Sdlw while (*apndx) *cp++ = *apndx++; 4410559Sdlw *cp = '\0'; 4510559Sdlw system (list); 4610559Sdlw } 4710559Sdlw else fprintf (stderr, "mkindx: can't open index\n"); 4810559Sdlw } 4910559Sdlw 5010559Sdlw center (string) 5110559Sdlw char *string; 5210559Sdlw { 5310559Sdlw short pad; 5410559Sdlw 5510559Sdlw pad = (72 - strlen(string)) >> 1; 5610559Sdlw while (pad-- > 0) fputc(' ', index); 5710559Sdlw fprintf (index, "%s\n", string); 5810559Sdlw } 59