freebsd-nq/contrib/libxo
Phil Shafer fd5e3f3ec6 Update from libxo-0.8.1 to 0.8.4:
0.8.4:
    - void anchor width optimization when we have a custom formatter (https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=221130)
    - make "{[:/18}" do the right thing (also allows "{[:/%s}", wide ? 40 : 10)
    - Can't skip anchor formatting in non-display styles
    - add test case for {[:/18}
    - add upload-xohtml-files to 'make upload'
  0.8.3:
    - xohtml: Add "-w" option to pull support files from gh_pages
    - Add "upload-xohtml-files" target to publish support files in gh_pages/
    - add HISTORY/AUTHORS section to man pages
  0.8.2:
    - xohtml: Add div.units as standard CSS text
    - Don't treat values as format strings; they are not
    - add "-p" to "mkdir -p build" in setup.sh
    - add test case for {U:%%} (from df.c)
    - detect end-of-string in '%' and '' escaping
    - make xo_simple_field, for common simple cases
    - xohtml: nuke "n" in "echo" commands
    - rename "format" to "fmt" for consistency; same for "str" to "value"

Submitted by:	phil
2017-08-03 15:47:42 +00:00
..
doc Update from libxo-0.8.1 to 0.8.4: 2017-08-03 15:47:42 +00:00
encoder Import libxo-0.8.0: 2017-06-08 13:04:01 +00:00
libxo Update from libxo-0.8.1 to 0.8.4: 2017-08-03 15:47:42 +00:00
packaging Import to 0.6.1 2016-04-15 18:46:15 +00:00
tests Update from libxo-0.8.1 to 0.8.4: 2017-08-03 15:47:42 +00:00
xo Update from libxo-0.8.1 to 0.8.4: 2017-08-03 15:47:42 +00:00
xohtml Update from libxo-0.8.1 to 0.8.4: 2017-08-03 15:47:42 +00:00
xolint Update from libxo-0.8.1 to 0.8.4: 2017-08-03 15:47:42 +00:00
xopo Update from libxo-0.8.1 to 0.8.4: 2017-08-03 15:47:42 +00:00
.gitignore Merge libxo 0.4.6 2016-04-12 23:30:56 +00:00
.svnignore Merge libxo 0.4.6 2016-04-12 23:30:56 +00:00
.travis.yml
configure.ac Update from libxo-0.8.1 to 0.8.4: 2017-08-03 15:47:42 +00:00
Copyright
INSTALL.md
libxo-config.in Import to 0.6.1 2016-04-15 18:46:15 +00:00
LICENSE
Makefile.am Update from libxo-0.8.1 to 0.8.4: 2017-08-03 15:47:42 +00:00
README.md
warnings.mk

libxo

libxo - A Library for Generating Text, XML, JSON, and HTML Output

The libxo library allows an application to generate text, XML, JSON, and HTML output using a common set of function calls. The application decides at run time which output style should be produced. The application calls a function "xo_emit" to product output that is described in a format string. A "field descriptor" tells libxo what the field is and what it means.

    xo_emit(" {:lines/%7ju/%ju} {:words/%7ju/%ju} "
            "{:characters/%7ju/%ju}{d:filename/%s}\n",
            linect, wordct, charct, file);

Output can then be generated in various style, using the "--libxo" option:

    % wc /etc/motd
          25     165    1140 /etc/motd
    % wc --libxo xml,pretty,warn /etc/motd
    <wc>
      <file>
        <filename>/etc/motd</filename>
        <lines>25</lines>
        <words>165</words>
        <characters>1140</characters>
      </file>
    </wc>
    % wc --libxo json,pretty,warn /etc/motd
    {
      "wc": {
        "file": [
          {
            "filename": "/etc/motd",
            "lines": 25,
            "words": 165,
            "characters": 1140
          }
        ]
      }
    }
    % wc --libxo html,pretty,warn /etc/motd
    <div class="line">
      <div class="text"> </div>
      <div class="data" data-tag="lines">     25</div>
      <div class="text"> </div>
      <div class="data" data-tag="words">    165</div>
      <div class="text"> </div>
      <div class="data" data-tag="characters">   1140</div>
      <div class="text"> </div>
      <div class="data" data-tag="filename">/etc/motd</div>
    </div>

View the beautiful documentation at:

http://juniper.github.io/libxo/libxo-manual.html

Analytics