bbtq

Barebones TOML query.


License
GPL-3.0
Install
pip install bbtq==3.0.1

Documentation

bbtq

Barebones TOML query. Like jq, but for TOML instead of JSON.

PyPI Test Status Code Coverage

installation

# via pypi
pip3 install bbtq

# directly from repo
pip3 install git+https://github.com/aerickson/bbtq.git@master

usage

# a search of '.' shows the entire document
$ tq bbtq/tests/test.toml .
title = "TOML Example"

[owner]
name = "Tom Preston-Werner"
dob = 1979-05-27T07:32:00-08:00

[database]
server = "192.168.1.1"
ports = [ 8001, 8001, 8002,]
connection_max = 5000
enabled = true

# retrieve items
$ tq bbtq/tests/test.toml .title
TOML Example
$ tq bbtq/tests/test.toml .database.ports
[8001, 8001, 8002]

# retreive an array element
$ tq bbtq/tests/test.toml ".database.ports[2]"
8002

# can also be used via pipe
$ cat bbtq/tests/test.toml | ./bin/tq - .

known limitations

why

  • I couldn't get yq's experimental support for TOML working.
  • I wanted a python implementation, all others seem to use go.

links