Class

Generators::HyperlinkHtml

Inheritance
< SM::ToHtml < Object

Subclass of the SM::ToHtml class that supports looking up words in the AllReferences list. Those that are found (like AllReferences in this comment) will be hyperlinked

Methods

Class

Visibility Signature
public new (from_path, context)

Instance

Visibility Signature
public gen_url (url, text)
public handle_special_CROSSREF (special)
public handle_special_HYPERLINK (special)
public handle_special_TIDYLINK (special)

Class Method Detail

new(from_path, context)

We need to record the html path of our caller so we can generate correct relative paths for any hyperlinks that we find

Instance Method Detail

gen_url(url, text)

Generate a hyperlink for url, labeled with text. Handle the special cases for img: and link: described under handle_special_HYPEDLINK

handle_special_CROSSREF(special)

We‘re invoked when any text matches the CROSSREF pattern (defined in MarkUp). If we fine the corresponding reference, generate a hyperlink. If the name we‘re looking for contains no punctuation, we look for it up the module/class chain. For example, HyperlinkHtml is found, even without the Generators:: prefix, because we look for it in module Generators first.

handle_special_HYPERLINK(special)

And we‘re invoked with a potential external hyperlink mailto: just gets inserted. http: links are checked to see if they reference an image. If so, that image gets inserted using an <img> tag. Otherwise a conventional <a href> is used. We also support a special type of hyperlink, link:, which is a reference to a local file whose path is relative to the —op directory.

handle_special_TIDYLINK(special)

HEre‘s a hypedlink where the label is different to the URL

 <label>[url]