Changeset fc6a4cb0 in report for tools


Ignore:
Timestamp:
Apr 29, 2010 12:10:41 PM (10 years ago)
Author:
Simon Marlow <marlowsd@…>
Branches:
h2010, master
Children:
a585ead
Parents:
cfc5ac6
Message:

Use tex4ht to format the HTML version
The new HTML output is much better-looking.

Also, switch to use the verbatim environment for code, after much
fighting with LaTeX. This generates less HTML, and it looks better.

Location:
tools
Files:
1 added
2 edited

Legend:

Unmodified
Added
Removed
  • tools/Makefile

    rcfc5ac6 rfc6a4cb0  
    44# index.hs           -- Program to hyperlink prelude index
    55# splitAndIndexPgm   -- perl script to convert .hs to .verb
    6 
    76
    87# What is GHC?
     
    1312LEX_OPTS = -t -8
    1413
    15 all : verbatim run_tex run_index
     14all : verbatim verb-tex4ht run_tex run_index
    1615
    17 verbatim: verbatim.lex
    18         $(LEX) $(LEX_OPTS) verbatim.lex > verbatim.c || ( rm -f verbatim.c && exit 1 )
    19         $(CC) -c verbatim.c -o verbatim.o
    20         $(CC) -o verbatim verbatim.o
     16%.c : %.lex
     17        $(LEX) $(LEX_OPTS) $< > $@ || ( rm -f verbatim.c && exit 1 )
     18
     19%.o : %.c
     20        $(CC) -c $< -o $@
     21
     22verbatim: verbatim.o
     23        $(CC) -o $@ $^
     24
     25verb-tex4ht: verb-tex4ht.o
     26        $(CC) -o $@ $^
    2127
    2228run_tex: tex.hs
  • tools/verbatim.lex

    rcfc5ac6 rfc6a4cb0  
    1 %START  NORM  VERB  MATH  SYNTAX
     1%START  NORM  VERB  INVERB MATH  SYNTAX
    22sp                      [ \t]*
    3 verb                    \n{sp}@{sp}\n
     3verb                    ^{sp}@{sp}\n
    44math                    \n{sp}\"{sp}\n
    55synt                    \n{sp}@@@{sp}\n
     
    1717<NORM>@@                { printf ("@"); }
    1818<NORM>@                 { printf ("\\mbox{\\tt ");
    19                           PUSH NORM;  BEGIN VERB; }
    20 <VERB>@                 { printf ("}");  POP; }
    21 <NORM>{verb}            { printf ("\n\\mbox{\\tt ");
    22                           PUSH NORM;  BEGIN VERB; }
    23 <VERB>{verb}            { printf ("}\n");  POP; }
    24 <VERB>^{sp}\n           { printf ("}\\\\[-8pt]\n\\mbox{\\tt "); }
    25 <VERB>\n                { printf ("}\\\\\n\\mbox{\\tt "); }
    26 <VERB>" "               { printf ("\\ "); }
    27 <VERB>@@                { printf ("@"); }
    28 <VERB>\#                { printf ("{\\char'43}"); }
    29 <VERB>\$                { printf ("{\\char'44}"); }
    30 <VERB>\%                { printf ("{\\char'45}"); }
    31 <VERB>\&                { printf ("{\\char'46}"); }
    32 <VERB>\~                { printf ("{\\char'176}"); }
    33 <VERB>\_                { printf ("{\\char'137}"); }
    34 <VERB>\^                { printf ("{\\char'136}"); }
    35 <VERB>\\                { printf ("{\\char'134}"); }
    36 <VERB>\{                { printf ("{\\char'173}"); }
    37 <VERB>\}                { printf ("{\\char'175}"); }
     19                          PUSH NORM;  BEGIN INVERB; }
     20<INVERB>@               { printf ("}");  POP; }
     21<INVERB>\#              { printf ("{\\char'43}"); }
     22<INVERB>\$              { printf ("{\\char'44}"); }
     23<INVERB>\%              { printf ("{\\char'45}"); }
     24<INVERB>\&              { printf ("{\\char'46}"); }
     25<INVERB>\~              { printf ("{\\char'176}"); }
     26<INVERB>\_              { printf ("{\\char'137}"); }
     27<INVERB>\^              { printf ("{\\char'136}"); }
     28<INVERB>\\              { printf ("{\\char'134}"); }
     29<INVERB>\{              { printf ("{\\char'173}"); }
     30<INVERB>\}              { printf ("{\\char'175}"); }
     31<NORM>{verb}            { printf ("\\begin{verbatim}\n"); PUSH NORM;  BEGIN VERB; }
     32<VERB>{verb}            { printf ("\\end{verbatim}\n"); POP; }
    3833<NORM>\"\"              { printf ("\""); }
    3934<NORM>\"{sp}            { printf ("\\mbox{$\\it ");
     
    5449<MATH>@@                { printf ("@"); }
    5550<MATH>@                 { printf ("\\makebox{\\tt ");
    56                           PUSH MATH;  BEGIN VERB; }
     51                          PUSH MATH;  BEGIN INVERB; }
    5752<NORM>{synt}{sp}        { printf ("\n\\begin{flushleft}");
    5853                          printf ("\\it\\begin{tabbing}\n");
     
    7772<SYNTAX>@@              { printf ("@"); }
    7873<SYNTAX>@               { printf ("\\makebox{\\tt ");
    79                           PUSH SYNTAX;  BEGIN VERB; }
     74                          PUSH SYNTAX;  BEGIN INVERB; }
    8075
    8176%%
Note: See TracChangeset for help on using the changeset viewer.