xref: /csrg-svn/usr.bin/f77/libU77/mkindx.c (revision 10559)
1*10559Sdlw /*
2*10559Sdlw  *  mkindx.c - utility to format a nice index to source files, etc.
3*10559Sdlw  *
4*10559Sdlw  *  usage:  mkindx "title string" [file_name] [filename] .....
5*10559Sdlw  */
6*10559Sdlw 
7*10559Sdlw # include	<stdio.h>
8*10559Sdlw 
9*10559Sdlw char id_mkindx[] = "@(#)mkindx.c	1.1";
10*10559Sdlw 
11*10559Sdlw char list[10000] = "pwd >>index; echo \" \" >>index; ls -l ";
12*10559Sdlw char *apndx = ">>index";
13*10559Sdlw char *cp = list;
14*10559Sdlw extern char *ctime();
15*10559Sdlw FILE *fopen(), *index;
16*10559Sdlw 
17*10559Sdlw main (argc, argv)
18*10559Sdlw char **argv;
19*10559Sdlw {
20*10559Sdlw 	short i;
21*10559Sdlw 	long time(), t;
22*10559Sdlw 
23*10559Sdlw 	if (index = fopen ("index", "w"))
24*10559Sdlw 	{
25*10559Sdlw 		fprintf (index, "\n\n\n\n\n\n\n\n\n");
26*10559Sdlw 		center (argv[1]);   /* center title on page */
27*10559Sdlw 		t = time(0);
28*10559Sdlw 		center (ctime(&t));   /* center date & time */
29*10559Sdlw 		fprintf (index, "\n");
30*10559Sdlw 		fclose (index);
31*10559Sdlw 		while (*cp) cp++;   /* find end of shell command */
32*10559Sdlw 		for (i = 2; i < argc; i++)
33*10559Sdlw 		{
34*10559Sdlw 			while (*argv[i]) *cp++ = *(argv[i]++);
35*10559Sdlw 			*cp++ = ' ';
36*10559Sdlw 		}
37*10559Sdlw 		while (*apndx) *cp++ = *apndx++;
38*10559Sdlw 		*cp = '\0';
39*10559Sdlw 		system (list);
40*10559Sdlw 	}
41*10559Sdlw 	else fprintf (stderr, "mkindx: can't open index\n");
42*10559Sdlw }
43*10559Sdlw 
44*10559Sdlw center (string)
45*10559Sdlw char *string;
46*10559Sdlw {
47*10559Sdlw 	short pad;
48*10559Sdlw 
49*10559Sdlw 	pad = (72 - strlen(string)) >> 1;
50*10559Sdlw 	while (pad-- > 0) fputc(' ', index);
51*10559Sdlw 	fprintf (index, "%s\n", string);
52*10559Sdlw }
53