Code Monkey home page Code Monkey logo

gojo's Introduction

gojo Travis Build Status

Yet another Go implementation of jo.

Usage

 $ gojo foo=bar qux=quux
{"foo":"bar","qux":"quux"}
 $ gojo -p foo=bar qux=quux
{
  "foo": "bar",
  "qux": "quux"
}
 $ gojo -a foo bar baz
["foo","bar","baz"]
 $ seq 10 | gojo -a
[1,2,3,4,5,6,7,8,9,10]
 $ gojo -p foo=$(gojo bar=$(gojo baz=100))
{
  "foo": {
    "bar": {
      "baz": 100
    }
  }
}
 $ gojo -p foo[bar][baz][qux][quux]=128
{
  "foo": {
    "bar": {
      "baz": {
        "qux": {
          "quux": 128
        }
      }
    }
  }
}
 $ gojo -p res[foo][][id]=10 res[foo][][id]=20 res[cnt]=2
{
  "res": {
    "foo": [
      {
        "id": 10
      },
      {
        "id": 20
      }
    ],
    "cnt": 2
  }
}
 $ gojo foo=@Makefile  # read contents from file
{"foo":"BIN := gojo\nCURRENT_REVISION := $(shell git rev-parse --short HEAD)\nBUILD_LDFLAGS := \"-X ..."}
 $ gojo foo=%Makefile  # base64 of file contents
{"foo":"QklOIDo9IGdvam8KQ1VSUkVOVF9SRVZJU0lPTiA6PSAkKHNoZWxsIGdpdCByZXYtcGFyc2UgLS1zaG9ydCBIRUFEKQp ..."}

Installation

Homebrew

brew install itchyny/tap/gojo

Build from source

go get -u github.com/itchyny/gojo/cmd/gojo

Difference to jo

  • Implemented in Go and Go-gettable
  • Drops support of k@v syntax (use k=true or k=false)
  • Does not print duplicate keys (although duplicate key in JSON is valid but it's not that useful and overwritten by the latter)
  • Reading file contents is not implemented yet

Bug Tracker

Report bug at Issues・itchyny/gojo - GitHub.

Author

itchyny (https://github.com/itchyny)

License

This software is released under the MIT License, see LICENSE.

gojo's People

Contributors

itchyny avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.