e-html-utils

e-html-utils

Functions

Description

Functions

e_text_to_html_full ()

gchar *
e_text_to_html_full (const gchar *input,
                     guint flags,
                     guint32 color);

This takes a buffer of text as input and produces a buffer of "equivalent" HTML, subject to certain transformation rules.

The set of possible flags is:

  • E_TEXT_TO_HTML_PRE: wrap the output HTML in <PRE> and </PRE> Should only be used if input is the entire buffer to be converted. If e_text_to_html is being called with small pieces of data, you should wrap the entire result in <PRE> yourself.

  • E_TEXT_TO_HTML_CONVERT_NL: convert "\n" to "<BR>n" on output. (Should not be used with E_TEXT_TO_HTML_PRE, since that would result in double-newlines.)

  • E_TEXT_TO_HTML_CONVERT_SPACES: convert a block of N spaces into N-1 non-breaking spaces and one normal space. A space at the start of the buffer is always converted to a non-breaking space, regardless of the following character, which probably means you don't want to use this flag on pieces of data that aren't delimited by at least line breaks.

    If E_TEXT_TO_HTML_CONVERT_NL and E_TEXT_TO_HTML_CONVERT_SPACES are both defined, then TABs will also be converted to spaces.

  • E_TEXT_TO_HTML_CONVERT_URLS: wrap <a href="..."> </a> around strings that look like URLs.

  • E_TEXT_TO_HTML_CONVERT_ADDRESSES: wrap <a href="mailto:..."> </a> around strings that look like mail addresses.

  • E_TEXT_TO_HTML_MARK_CITATION: wrap <font color="..."> </font> around citations (lines beginning with "> ", etc).

  • E_TEXT_TO_HTML_ESCAPE_8BIT: flatten everything to US-ASCII

  • E_TEXT_TO_HTML_CITE: quote the text with "> " at the start of each line.

  • E_TEXT_TO_HTML_HIDE_URL_SCHEME: hides scheme part of the URL in the display part of the generated text (thus, instead of "http://www.example.com", user will only see "www.example.com")

  • E_TEXT_TO_HTML_URL_IS_WHOLE_TEXT: set when the whole input text represents a URL; any spaces are removed in the href part.

Parameters

input

a NUL-terminated input buffer

 

flags

some combination of the E_TEXT_TO_HTML_* flags defined in e-html-utils.h

 

color

color for citation highlighting

 

Returns

a newly-allocated string containing HTML


e_text_to_html ()

gchar *
e_text_to_html (const gchar *input,
                guint flags);

Types and Values

E_TEXT_TO_HTML_PRE

#define E_TEXT_TO_HTML_PRE               (1 << 0)

E_TEXT_TO_HTML_CONVERT_NL

#define E_TEXT_TO_HTML_CONVERT_NL        (1 << 1)

E_TEXT_TO_HTML_CONVERT_SPACES

#define E_TEXT_TO_HTML_CONVERT_SPACES    (1 << 2)

E_TEXT_TO_HTML_CONVERT_URLS

#define E_TEXT_TO_HTML_CONVERT_URLS      (1 << 3)

E_TEXT_TO_HTML_MARK_CITATION

#define E_TEXT_TO_HTML_MARK_CITATION     (1 << 4)

E_TEXT_TO_HTML_CONVERT_ADDRESSES

#define E_TEXT_TO_HTML_CONVERT_ADDRESSES (1 << 5)

E_TEXT_TO_HTML_ESCAPE_8BIT

#define E_TEXT_TO_HTML_ESCAPE_8BIT       (1 << 6)

E_TEXT_TO_HTML_CITE

#define E_TEXT_TO_HTML_CITE              (1 << 7)

E_TEXT_TO_HTML_HIDE_URL_SCHEME

#define E_TEXT_TO_HTML_HIDE_URL_SCHEME   (1 << 8)

E_TEXT_TO_HTML_LAST_FLAG

#define E_TEXT_TO_HTML_LAST_FLAG         (1 << 10)