Skip to main content

A command-line tool to extract, normalize, and JSONify values from an iniherit-enabled "INI" file.

Project description

A command-line tool to extract, normalize, and JSONify values from an iniherit -enabled “INI” file.

Installation

$ pip install iniget

Usage

Given the following two files, base.ini:

[sect1]
foo = bar

and config.ini:

[DEFAULT]
%inherit = base.ini

The following will extract the inherited foo value:

$ iniget config.ini sect1 foo
bar

Much more is possible, including:

  • listing sections
  • listing options
  • JSON-encoding the configuration
  • JSON-interpreting option values
  • Control case-sensitivity, interpolation, and default values

Options

  • -s SECTION, --section SECTION:

    Specify additional sections to extract from; can be specified multiple times to add multiple sections.

  • -C, --no-case:

    Handle option names case insensitively.

  • -I, --no-inherit:

    Disable processing of “%inherit” directives.

  • -E, --no-expansion:

    Disable ConfigParser option expansion (“interpolation”).

  • -K, --list-options:

    List the option names only, not the values.

  • -S, --list-sections:

    List the section names only.

  • -J, --json-parse:

    If option values are JSON-parseable, parse as such; additionally, the following are interpreted as boolean values: ‘yes’, ‘true’, ‘on’, ‘off’, ‘no’, ‘false’.

  • -j, --json-output:

    Render the output using JSON syntax.

  • -d JSON, --defaults JSON:

    Set the ConfigParser default values from this JSON-parsed dictionary.

  • -r, --raw:

    Don’t do anything fancy: show exactly what ConfigParser interprets (requires exactly one section and one option); note that options “–no-case”, “–no-inherit”, “–no-expansion” and “–defaults” are still honored, but “–json-parse” is not.

Project details


Release history Release notifications

History Node

0.4.2

History Node

0.4.1

History Node

0.4.0

This version
History Node

0.3.0

History Node

0.2.0

History Node

0.1.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
iniget-0.3.0.tar.gz (7.8 kB) Copy SHA256 hash SHA256 Source None Mar 27, 2014

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page