summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobby Russell <robby@planetargon.com>2014-03-23 11:40:46 -0700
committerRobby Russell <robby@planetargon.com>2014-03-23 11:40:46 -0700
commitffc17b6b4d55f74b9d3786ba790b7340865e5014 (patch)
tree753acf6104cda2f01b37e2f2685999b5e95bb4cc
parent27965fedec9da5329d3dd8a8d3a0f875e0b3bec9 (diff)
parent1ca4e2146b7c99e5ec31cd7b8d8717ef2fea2f69 (diff)
downloadzsh-ffc17b6b4d55f74b9d3786ba790b7340865e5014.tar.gz
zsh-ffc17b6b4d55f74b9d3786ba790b7340865e5014.tar.bz2
zsh-ffc17b6b4d55f74b9d3786ba790b7340865e5014.zip
Merge pull request #2563 from bobwilliams/master
Adds command line aliases useful for dealing with JSON
-rw-r--r--plugins/jsontools/jsontools.plugin.zsh16
1 files changed, 16 insertions, 0 deletions
diff --git a/plugins/jsontools/jsontools.plugin.zsh b/plugins/jsontools/jsontools.plugin.zsh
new file mode 100644
index 000000000..7b6f8c585
--- /dev/null
+++ b/plugins/jsontools/jsontools.plugin.zsh
@@ -0,0 +1,16 @@
+# JSON Tools
+# Adds command line aliases useful for dealing with JSON
+
+if [[ $(whence $JSONTOOLS_METHOD) = "" ]]; then
+ JSONTOOLS_METHOD=""
+fi
+
+if [[ $(whence node) != "" && ( "x$JSONTOOLS_METHOD" = "x" || "x$JSONTOOLS_METHOD" = "xnode" ) ]]; then
+ alias pp_json='node -e "console.log(JSON.stringify(process.argv[1]), null, 4)"'
+elif [[ $(whence python) != "" && ( "x$JSONTOOLS_METHOD" = "x" || "x$JSONTOOLS_METHOD" = "xpython" ) ]]; then
+ alias pp_json='python -mjson.tool'
+elif [[ $(whence ruby) != "" && ( "x$JSONTOOLS_METHOD" = "x" || "x$JSONTOOLS_METHOD" = "xruby" ) ]]; then
+ alias pp_json='ruby -e "require \"json\"; require \"yaml\"; puts JSON.parse(STDIN.read).to_yaml"'
+fi
+
+unset JSONTOOLS_METHOD \ No newline at end of file