jdp / jarg

shorthand JSON and form encoding syntax in the shell

Home Page:http://jdp.github.io/jarg/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

jarg

image

jarg is an encoding shorthand for your shell. It is a command-line utility that makes generating data in formats like JSON, YAML, and form encoding easier in the shell.

Installation

Install from PyPI:

$ pip install jarg

Usage

Each argument to jarg should be in the format of name=value. Values are interpreted as their closest native encoding value, and the default dialect is JSON. The most common case is probably string names and values:

$ jarg foo=bar baz=quux
{"foo": "bar", "baz": "quux"}

Floats and integers will work too:

$ jarg foo=10 bar=4.2
{"foo": 10, "bar": 4.2}

The value is optional. If you leave it out, it is interpreted as null:

$ jarg foo
{"foo": null}

The name portions have the same syntax and semantics as HTML JSON names:

$ jarg foo[]=bar foo[]=baz bar[baz]=quux
{"foo": ["bar", "baz"], "bar": {"baz": "quux"}}

You can also write literal values directly, using the name:=value syntax. That lets you write things like booleans, lists, and explicit strings:

$ jarg foo:=true bar:=\"123\"
{"foo": true, "bar": "123"}
$ jarg foo:=[1,2,3]
{"foo": [1, 2, 3]}

Dialects

The default dialect is JSON, and includes support for YAML and form encoding.

To use the YAML dialect, use the -y/--yaml switch:

$ jarg -y name=jarg type="cli tool" traits[]=dope traits[]=rad
---
name: jarg
traits: [dope, rad]
type: cli tool

You can switch to the form encoding dialect with the -f/--form switch:

$ jarg -f foo=bar baz="jarg is dope"
foo=bar&baz=jarg+is+dope

About

shorthand JSON and form encoding syntax in the shell

http://jdp.github.io/jarg/

License:MIT License


Languages

Language:Python 97.7%Language:Makefile 2.3%