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


Download files

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

Source Distribution

iniget-0.3.0.tar.gz (7.8 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page