


NOWEB(7)                                                 NOWEB(7)


NNAAMMEE
       nowebfilters - filters and parsers for use with noweb

SSYYNNOOPPSSIISS
       [nnoowweeaavvee|nnoottaannggllee|nnoowweebb]  [--ffiilltteerr  _f_i_l_t_e_r|--mmaarrkkuupp _p_a_r_s_e_r]
       ...

DDEESSCCRRIIPPTTIIOONN
       This man page documents the various  filters  and  parsers
       that  are  supplied with _n_o_w_e_b(1).  A filter, which trans-
       forms the pipeline representation, is used with the  --ffiill--
       tteerr option.  A parser, which reads a source file and emits
       the pipeline representation,  is  used  with  the  --mmaarrkkuupp
       option.   Not all filters and parsers are available at all
       installations.

FFIILLTTEERRSS
       aauuttooddeeffss..**
              _n_o_w_e_a_v_e_'_s --aauuttooddeeffss and --sshhoowwaauuttooddeeffss  options  use
              these  filters,  which  automatically  find defined
              identifiers.  The ** stands for the name of  a  pro-
              gramming language.  (Icon installation only.)

       bbttddeeffnn The  bbttddeeffnn filter uses Dave Hanson's convention to
              mark definitions.  In code  chunks,  each  defining
              instances  of an identifier should be preceded by a
              single backtick character (ASCII 140).  The  bbttddeeffnn
              filter  removes  these  backticks from the code and
              converts them to  definitions,  thus:  ``ddeeffiinniittiioonn.
              It,  not  @@  %%ddeeff,  should be used with both _n_o_t_a_n_-
              _g_l_e(1) and _n_o_w_e_a_v_e(1), at least for programs  writ-
              ten in C-like languages.

       ddiissaammbbiigguuaattee
              The ddiissaammbbiigguuaattee filter makes it possible to abbre-
              viate chunk names using a trailing ellipsis  (three
              periods), in the style of WEB and _n_u_w_e_b(1).

       ddooccss22ccoommmmeennttss _o_p_t_i_o_n_s
              The  ddooccss22ccoommmmeennttss  filter  converts  documentation
              chunks to comments in code chunks.  Options include
              --aallll,  which converts all documentation chunks into
              comments;  --oonnee  converts  only  one  documentation
              chunk  preceding  each  code chunk.  The --ww_k option
              formats comments _k columns wide.

              Other options control the language and style of the
              comment.   Languages  available  include  --aawwkk, --cc,
              --cc++++, --ff7777, --ff9900, --iiccnn,  --iiccoonn,  --lliisspp,  --mm33,  --mmll,
              --ooccaammllwweebb, --ppaassccaall, --ssccmm, and --tteexx.

              Norman recommends using nnoottaannggllee(1) with ddooccssttooccoomm--
              mmeennttss instead of nnoouunnttaannggllee(1).  (Icon installation
              only.)



                         local 3/28/2001                        1





NOWEB(7)                                                 NOWEB(7)


       eelliiddee _p_a_t_t_e_r_n_s
              The  eelliiddee  filter removes from the stream any code
              chunk matching any of the arguments.  Each argument
              is a pattern in which ??  matches any single charac-
              ter and ** mmaattcchheess aannyy sseeqquueennccee ooff cchhaarraacctteerrss..

       eemmppttyyddeeffnn
              The eemmppttyyddeeffnn  filter  makes  an  empty  definition
              (<<<<>>>>==)  an  abbreviation for a continuation of the
              previous definition.

       ll22hh [--sshhooww--uunnkknnoowwnnss]
              The ll22hh filter converts LaTeX to HTML in documenta-
              tion  chunks.   If  the  --sshhooww--uunnkknnoowwnnss  options is
              given, unrecognized LaTeX control sequences  appear
              in  bold  in the output.  ll22hh uses the LaTeX-gener-
              ated .toc and .bbl files to help  create  table  of
              contents   and  bibliography.   (Icon  installation
              only.)

       ppiippeeddooccss _c_o_m_m_a_n_d
              The ppiippeeddooccss filter runs each  documentation  chunk
              through  an invocation of _c_o_m_m_a_n_d, which may be any
              Unix command.  The Noweb library includes the  com-
              mand  hh22aa,  which  uses  _l_y_n_x(1) to convert HTML to
              ASCII.

       xxcchhuunnkkss _f_i_l_e_s
              The xxcchhuunnkkss filter pulls in  code  chunks  from  an
              external  source.   The _f_i_l_e_s argument lists one or
              more noweb files, which are  used  only  for  their
              definitions  of  code  chunks.  Empty chunk defini-
              tions in the main document are  replaced  with  the
              external definitions of the same name.  This filter
              makes it possible to include the same  code  chunks
              in multiple documents, or even the same code chunks
              multiple times in the same document.  (Icon instal-
              lation only.)

PPAARRSSEERRSS
       A parser converts a source file to the noweb pipeline for-
       mat,  interpreting  the  ``markup''  in  that  file.    By
       default, the tools use the standard noweb markup, but some
       installations may support nuweb markup as  well.   Parsers
       include

       mmaarrkkuupp Converts  standard _n_o_w_e_b(1) markup to pipeline for-
              mat.

       nnuummaarrkkuupp
              Converts _n_u_w_e_b(1) markup to noweb pipeline  format.
              It is not part of the standard installation, but it
              can be found in _n_o_w_e_b's ccoonnttrriibb//nnoorrmmaann directory.




                         local 3/28/2001                        2





NOWEB(7)                                                 NOWEB(7)


FFIILLEESS
       All filters and parsers are stored in ||LLIIBBDDIIRR||

BBUUGGSS
       It is possible to tell ll22hh about new control sequences  by
       putting   special  TeX  comments  in  one's  documentation
       chunks, but there's no  documentation.   Use  the  source,
       Luke.

       nnuummaarrkkuupp  loses information, e.g., about the proper treat-
       ment of tabs.  It also doesn't compensate  for  _n_o_t_a_n_g_l_e's
       newline-removal  heuristic,  which  means results on _n_u_w_e_b
       files may differ subtly from those produced by _n_u_w_e_b_.

       Many filters are not available in installations  that  use
       Awk instead of Icon.

SSEEEE AALLSSOO
       _n_o_w_e_a_v_e(1), _n_o_t_a_n_g_l_e(1), _n_o_w_e_b(1)
       The _N_o_w_e_b _H_a_c_k_e_r_'_s _G_u_i_d_e

VVEERRSSIIOONN
       This man page is from _n_o_w_e_b version 2.10a.

AAUUTTHHOORR
       Norman   Ramsey,  Harvard  University.   Internet  address
       nnrr@@eeeeccss..hhaarrvvaarrdd..eedduu.
       Noweb home page at  hhttttpp::////wwwwww..eeeeccss..hhaarrvvaarrdd..eedduu//~~nnrr//nnoowweebb.





























                         local 3/28/2001                        3


