view lib-src/digest-doc.c @ 858:2c12fe2da451

[xemacs-hg @ 2002-05-31 09:38:45 by michaels] 2002-05-28 Martin Köbele <mkoebele@mkoebele.de>, Jens Müller <jmueller@informatik.uni-tuebingen.de> * lrecord.h (lrecord_type): Add lrecord_type_weak_box to lrecord_type enumeration. * alloc.c (garbage_collect_1): Call prune_weak_boxes(). * lisp.h (struct weak_box): * data.c: (prune_weak_boxes): (mark_weak_box): (print_weak_box): (weak_box_equal): (weak_box_hash): (make_weak_box): (Fmake_weak_box): (Fweak_box_ref): (Fweak_boxp): (syms_of_data): (vars_of_data): Add implementation of weak boxes.
author michaels
date Fri, 31 May 2002 09:38:49 +0000
parents 023b83f4e54b
children 04bc9d2f42c7
line wrap: on
line source

/* 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.  */

#ifdef emacs
#include <config.h>
#endif
#include <stdio.h>

int
main (int argc, char *argv[])
{
  register int ch;
  register int notfirst = 0;

  printf (".TL\n");
  printf ("Command Summary for XEmacs\n");
  printf (".AU\nThe XEmacs Advocacy Group\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;
}