Notes

This section provides some additional features and warnings.

  1. Lines containing HTML comments.
    The HTML output by weav is broken into lines containing not more than 80 characters each. When the HTML text is being copied, the existing line breaks are copied as well, so there is no problem with `<!--' symbols unless the original Web 68 file contains a line more than 80 characters long or a line with a snippet that expands to a line of more than 80 characters. Such lines should not have `<!--' symbols in them.

  2. The weav output contains embedded codes that cause HTML to indent and break lines as necessary, depending on the fonts used and the desired page width. For best results it is wise to adhere to the following restrictions:-
    1. Comments in Algol 68 text should appear only after units; that is, after semicolons, after bold tags like then or do, or before bold tags like end or od.
    2. Don't enclose long Algol 68 texts in snippets, since the indentation and line breaking codes are omitted when the snippet is translated from Algol 68 to HTML. Stick to simple expressions or units.

  3. Comments and module tags are not permitted in snippets. After a `!' signals the change from HTML text to Algol 68 text, the next `!' that is not part of a string or control text ends the snippet.

  4. Because an Algol 68 comment must begin and end with the same symbol, it is quite possible to nest a comment delimited by `#' with a comment delimited by co or vice versa. At present, tang and weav handle comments in different ways and it is necessary to satisfy both conventions: tang ignores `!' characters entirely, while weav uses them to switch between HTML text and Algol 68 text.

  5. Algol 68 bold tags must appear entirely in uppercase letters in the Web 68 file; otherwise their special nature will not be recognised by weav. You could, for example, have an end identifier or macro and it will not be confused with Algol 68's end.

  6. Sometimes it is desirable to insert spacing into Algol 68 code that is more general than the thin space provided by `@,'. The @h command can be used for this purpose; for example, `@h<hr>@>' will emit a horizontal rule.

  7. weav and tang are both designed to work with a single input file, called a Web 68 file. Any changes required in the Web 68 file should be made with a version control system. There are no ``change files'' corresponding to the original Web system created by Donald Knuth.

Sian Mountbatten 2012-01-05