Annotation of gforth/glosgen.glo, revision 1.1
1.1 ! anton 1: \G comments should appear immediately above or below the definition of
! 2: the word it belongs to. The definition line should contain no more
! 3: than the definition, a stack comment and a \ comment after which
! 4: the wordset and pronounciation.
! 5: An isolated block of \G comments is placed at the beginning of the
! 6: glossary file.
! 7:
! 8: A typical glossary session may look like:
! 9: NEWGLOS MAKEGLOS SOURCE1.STR MAKEGLOS SOURCE2.STR WRITEGLOS GLOS.GLO
! 10:
! 11: BUILD-HLINE addr ---
! 12: Build header line for glossary entry.
! 13:
! 14: GLOS-COMMENT? --- flag
! 15: Determine if line at HERE is glossary comment, if so.
! 16: allot it, else store into oldline.
! 17:
! 18: INSERT-HEADER addr ---
! 19: Insert the header into the list at the alphabetically correct place.
! 20:
! 21: MAKE-GLOSENTRY fid --- fid flag
! 22: Read lines from the file fid until \G line encountered.
! 23: Collect all adjacent \G lines and find header line.
! 24: then insert entry into list flag=0 if no entry found.
! 25:
! 26: MAKEGLOS "name"
! 27: This command reads a source file and builds glossary info
! 28: for it in memory.
! 29:
! 30: NEWGLOS
! 31: This command starts a fresh glossary.
! 32:
! 33: PROCESS-HEADER
! 34: Process the header information stored in OLDLINE
! 35:
! 36: SCAN-WORD ---- addr len
! 37: Scan a word on oldline through pointer charptr
! 38:
! 39: WRITE-GLOSENTRY addr fid ---
! 40: write the glossary entry at address addr to file fid.
! 41:
! 42: WRITEGLOS "name"
! 43: This command writes the glossary info from memory to a file.
! 44: The glossary info may be collected from more source files.
! 45:
! 46: \G
! 47: \G is an alias for \, so it is a comment till end-of-line, but
! 48: it has a special meaning for the Glossary Generator.
! 49:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>