1*47943Sbostic /*-
2*47943Sbostic * Copyright (c) 1980 The Regents of the University of California.
3*47943Sbostic * All rights reserved.
4*47943Sbostic *
5*47943Sbostic * %sccs.include.proprietary.c%
623081Skre */
723081Skre
8*47943Sbostic #ifndef lint
9*47943Sbostic char copyright[] =
10*47943Sbostic "@(#) Copyright (c) 1980 The Regents of the University of California.\n\
11*47943Sbostic All rights reserved.\n";
12*47943Sbostic #endif /* not lint */
13*47943Sbostic
14*47943Sbostic #ifndef lint
15*47943Sbostic static char sccsid[] = "@(#)mkindx.c 5.2 (Berkeley) 04/12/91";
16*47943Sbostic #endif /* not lint */
17*47943Sbostic
1823081Skre /*
1921020Slibs * mkindx.c - utility to format a nice index to source files, etc.
2021020Slibs *
2121020Slibs * usage: mkindx "title string" [file_name] [filename] .....
2221020Slibs */
2321020Slibs
2421020Slibs # include <stdio.h>
2521020Slibs
26*47943Sbostic char id_mkindx[] = "@(#)mkindx.c 5.2 04/12/91";
2721020Slibs
2821020Slibs char list[10000] = "pwd >>index; echo \" \" >>index; ls -l ";
2921020Slibs char *apndx = ">>index";
3021020Slibs char *cp = list;
3121020Slibs extern char *ctime();
3221020Slibs FILE *fopen(), *index;
3321020Slibs
main(argc,argv)3421020Slibs main (argc, argv)
3521020Slibs char **argv;
3621020Slibs {
3721020Slibs short i;
3821020Slibs long time(), t;
3921020Slibs
4021020Slibs if (index = fopen ("index", "w"))
4121020Slibs {
4221020Slibs fprintf (index, "\n\n\n\n\n\n\n\n\n");
4321020Slibs center (argv[1]); /* center title on page */
4421020Slibs t = time(0);
4521020Slibs center (ctime(&t)); /* center date & time */
4621020Slibs fprintf (index, "\n");
4721020Slibs fclose (index);
4821020Slibs while (*cp) cp++; /* find end of shell command */
4921020Slibs for (i = 2; i < argc; i++)
5021020Slibs {
5121020Slibs while (*argv[i]) *cp++ = *(argv[i]++);
5221020Slibs *cp++ = ' ';
5321020Slibs }
5421020Slibs while (*apndx) *cp++ = *apndx++;
5521020Slibs *cp = '\0';
5621020Slibs system (list);
5721020Slibs }
5821020Slibs else fprintf (stderr, "mkindx: can't open index\n");
5921020Slibs }
6021020Slibs
center(string)6121020Slibs center (string)
6221020Slibs char *string;
6321020Slibs {
6421020Slibs short pad;
6521020Slibs
6621020Slibs pad = (72 - strlen(string)) >> 1;
6721020Slibs while (pad-- > 0) fputc(' ', index);
6821020Slibs fprintf (index, "%s\n", string);
6921020Slibs }
70