0
|
1 /* Give this program DOCSTR.mm.nn as standard input
|
|
2 and it outputs to standard output
|
|
3 a file of nroff output containing the doc strings.
|
|
4
|
|
5 See also sorted-doc.c, which produces similar output
|
|
6 but in texinfo format and sorted by function/variable name. */
|
|
7
|
|
8 #include <stdio.h>
|
|
9 #ifdef emacs
|
|
10 #include <../src/config.h>
|
|
11 #endif
|
|
12
|
|
13 int
|
|
14 main ()
|
|
15 {
|
|
16 register int ch;
|
|
17 register int notfirst = 0;
|
|
18
|
|
19 printf (".TL\n");
|
|
20 printf ("Command Summary for GNU Emacs\n");
|
|
21 printf (".AU\nRichard M. Stallman\n");
|
|
22 while ((ch = getchar ()) != EOF)
|
|
23 {
|
|
24 if (ch == '\037')
|
|
25 {
|
|
26 if (notfirst)
|
|
27 printf ("\n.DE");
|
|
28 else
|
|
29 notfirst = 1;
|
|
30
|
|
31 printf ("\n.SH\n");
|
|
32
|
|
33 ch = getchar ();
|
|
34 printf (ch == 'F' ? "Function " : "Variable ");
|
|
35
|
|
36 while ((ch = getchar ()) != '\n') /* Changed this line */
|
|
37 {
|
|
38 if (ch != EOF)
|
|
39 putchar (ch);
|
|
40 else
|
|
41 {
|
|
42 ungetc (ch, stdin);
|
|
43 break;
|
|
44 }
|
|
45 }
|
|
46 printf ("\n.DS L\n");
|
|
47 }
|
|
48 else
|
|
49 putchar (ch);
|
|
50 }
|
|
51 return 0;
|
|
52 }
|