xo_set_flags - Man Page

set operational flags for a libxo handle

Library

Text, XML, JSON, and HTML Output Emission Library (libxo, -lxo)

Synopsis

#include <libxo/xo.h>

void
xo_set_flags(xo_handle_t *handle, unsigned flags);

void
xo_clear_flags(xo_handle_t *handle, xo_xof_flags_t flags);

Description

Use the xo_set_flags() function to set the flags for a libxo handle. To use the default handle, pass a NULL handle.

The set of valid flags include:

Flag Description
XOF_CLOSE_FP

Close file pointer on xo_destroy(3). This flag will trigger the call of the close_func() (provided via xo_set_writer(3)) when the handle is destroyed.

XOF_COLOR

Enable color and effects in output regardless of output device.

XOF_COLOR_ALLOWED

Allow color and effects if the output device is a terminal.

XOF_INFO

Display info data attributes (HTML)

XOF_KEYS

Emit the key attribute (XML)

XOF_LOG_GETTEXT

Log (via stderr) each gettext(3) string lookup

XOF_LOG_SYSLOG

Log (via stderr) each syslog message (via xo_syslog(3))

XOF_NO_ENV

Do not use the LIBXO_OPTIONS environment variable.

XOF_PRETTY

Make 'pretty printed' output, with the addition of indentation and newlines to enhance the readability of XML, JSON, and HTML output. Text output is not affected.

XOF_UNDERSCORES

Replaces hyphens with underscores

XOF_UNITS

Display units (XML and HMTL)

XOF_WARN

Generate warnings for broken calls, triggering diagnostic output (on standard error) when the library notices errors during operations, or with arguments to functions. Without warnings enabled, such conditions are ignored. Warnings allow developers to debug their interaction with libxo. The function xo_failure() can be used as a breakpoint for a debugger, regardless of whether warnings are enabled.

XOF_WARN_XML

Generate warnings in XML on stdout

XOF_XPATH

Emit XPath expressions (HTML)

XOF_COLUMNS

Force xo_emit(3) to return columns used

XOF_FLUSH

Flush output after each xo_emit(3) call

If the style is XO_STYLE_HTML, the following additional flags can be used:

Flag Description
XOF_XPATH

Emit "data-xpath" attributes

XOF_INFO

Emit additional informational fields for HTML output. See xo_set_info(3) for details.

The XOF_XPATH flag enables the emission of XPath expressions detailing the hierarchy of XML elements used to encode the data field, if the XPATH style of output were requested.

If the style is XO_STYLE_XML, the following additional flags can be used:

Flag Description
XOF_KEYS

Add 'key' attribute to the XML encoding for field definitions that use the 'k' modifier. The key attribute has the value "key".

The xo_clear_flags() function turns off the given flags in a specific handle.

See Also

xo_emit(3), libxo(3)

History

The libxo library first appeared in FreeBSD 11.0.

Authors

libxo was written by Phil Shafer <phil@freebsd.org>.

Additional Documentation

FreeBSD uses libxo version 1.6.0. Complete documentation can be found on github:

https://juniper.github.io/libxo/1.6.0/html/index.html

libxo lives on github as:

https://github.com/Juniper/libxo

The latest release of libxo is available at:

https://github.com/Juniper/libxo/releases

History

The libxo library was added in FreeBSD 11.0.

Author

Phil Shafer

Referenced By

libxo(3), xo_emit(3).

December 4, 2014