diff lib-src/digest-doc.c @ 0:376386a54a3c r19-14

Import from CVS: tag r19-14
author cvs
date Mon, 13 Aug 2007 08:45:50 +0200
parents
children e45d5e7c476e
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lib-src/digest-doc.c	Mon Aug 13 08:45:50 2007 +0200
@@ -0,0 +1,52 @@
+/* Give this program DOCSTR.mm.nn as standard input
+   and it outputs to standard output
+   a file of nroff output containing the doc strings.
+
+   See also sorted-doc.c, which produces similar output
+   but in texinfo format and sorted by function/variable name.  */
+
+#include <stdio.h>
+#ifdef emacs
+#include <../src/config.h>
+#endif
+
+int
+main ()
+{
+  register int ch;
+  register int notfirst = 0;
+
+  printf (".TL\n");
+  printf ("Command Summary for GNU Emacs\n");
+  printf (".AU\nRichard M. Stallman\n");
+  while ((ch = getchar ()) != EOF)
+    {
+      if (ch == '\037')
+	{
+	  if (notfirst)
+	    printf ("\n.DE");
+	  else
+	    notfirst = 1;
+
+	  printf ("\n.SH\n");
+
+	  ch = getchar ();
+	  printf (ch == 'F' ? "Function " : "Variable ");
+
+	  while ((ch = getchar ()) != '\n')  /* Changed this line */
+	    {
+	      if (ch != EOF)
+		  putchar (ch);
+	      else
+		{
+		  ungetc (ch, stdin);
+		  break;
+		}
+	    }
+	  printf ("\n.DS L\n");
+	}
+      else
+	putchar (ch);
+    }
+  return 0;
+}