minor fixes: namings, documentation, rename of sublime command

This commit is contained in:
Nikolajus 2014-04-02 20:31:38 +02:00 committed by Nikolajus Krauklis
parent e627993ffa
commit 999c9e8e0d
3 changed files with 27 additions and 16 deletions

View File

@ -1,6 +1,6 @@
[
{
"caption": "Pretty JSON: Reformat (Pretty Print) JSON",
"caption": "Pretty JSON: Format (Pretty Print) JSON",
"command": "pretty_json"
},
{
@ -8,7 +8,7 @@
"command": "un_pretty_json"
},
{
"caption": "Pretty JSON: Jq query",
"caption": "Pretty JSON: JSON query with ./jq",
"command": "jq_pretty_json"
}
]

View File

@ -12,15 +12,13 @@ except (ValueError):
import simplejson as json
from simplejson import OrderedDict
s = sublime.load_settings("Pretty JSON.sublime-settings")
jq_exits = False
jq_version = None
import subprocess
try:
# checking if jq tool is available in PATH so we can use it
# checking if ./jq tool is available so we can use it
s = subprocess.Popen(["jq", "--version"], stderr=subprocess.PIPE, stdout=subprocess.PIPE)
out, err = s.communicate()
jq_version = err.decode("utf-8").replace("jq version ", "").strip()
@ -29,6 +27,9 @@ except OSError:
jq_exits = False
s = sublime.load_settings("Pretty JSON.sublime-settings")
class PrettyJsonCommand(sublime_plugin.TextCommand):
""" Pretty Print JSON """
def run(self, edit):
@ -107,12 +108,18 @@ class UnPrettyJsonCommand(PrettyJsonCommand):
class JqPrettyJson(sublime_plugin.WindowCommand):
"""
Allows work with jq
Allows work with ./jq
"""
def run(self):
self.window.show_input_panel("Enter JQ query", ".", on_done=self.done, on_change=None, on_cancel=None)
if jq_exits:
self.window.show_input_panel("Enter ./jq filter expression", ".", on_done=self.done, on_change=None, on_cancel=None)
else:
sublime.status_message("./jq tool is not available on your system. http://stedolan.github.io/jq")
def get_content(self):
"""
returns content of active view or selected region
"""
view = self.window.active_view()
selection = ""
for region in view.sel():

View File

@ -1,6 +1,6 @@
[![Build Status](https://travis-ci.org/dzhibas/SublimePrettyJson.svg)](https://travis-ci.org/dzhibas/SublimePrettyJson)
Prettify JSON plugin for Sublime Text 2 & 3
Prettify/Minify/Query JSON plugin for Sublime Text 2 & 3
## Installation
@ -14,21 +14,25 @@ To prettify JSON, make selection of json and press keys:
- Windows: <kbd>ctrl+alt+j</kbd>
- OS X: <kbd>cmd+ctrl+j</kbd>
or through Command Palette <kbd>Ctrl+Shift+P</kbd> find "Pretty JSON: Reformat (Pretty Print) JSON"
or through Command Palette <kbd>Ctrl+Shift+P</kbd> find "Pretty JSON: Format (Pretty Print) JSON"
If selection is empty and configuration entry **use_entire_file_if_no_selection** is true, tries to prettify whole file.
If selection is empty and configuration entry **use_entire_file_if_no_selection** is true, tries to prettify whole file
If JSON is not valid it will be displayed in status bar of sublime.
If JSON is not valid it will be displayed in status bar of Sublime Text
### Compress / Minify JSON
Using Command Palette <kbd>Ctrl+Shift+P</kbd> find "Pretty JSON: Minify (compress) JSON" this will make selection or full buffer as single line JSON which later you can use in command lines or somewhere else
Using Command Palette <kbd>Ctrl+Shift+P</kbd> find "Pretty JSON: Minify (compress) JSON" this will make selection or full buffer as single line JSON which later you can use in command lines (curl/httpie) or somewhere else...
## jQ usage
## ./jQ query/filter usage
Demo:
[![Demo](http://www.gang.lt/prettyjson.gif)](http://www.gang.lt/prettyjson.gif)
if on your machine "[./jq](http://stedolan.github.io/jq/)" tool is available with <kdb>ctrl+atl+shift+j</kdb> you can run against your json. output will be opened in new view
If on your machine "[./jq](http://stedolan.github.io/jq/)" tool is available with <kdb>ctrl+atl+shift+j</kdb> you can run against your json. output will be opened in new view so you can once again apply jq on new buffer
You can find instructions of tool here:
http://stedolan.github.io/jq/
@ -44,13 +48,13 @@ http://stedolan.github.io/jq/
## Using tabs for indentation
You can change configuration key **indent** to string value "\t" or any other string.
You can change configuration key **indent** to string value "\t" or any other string
```
"indent" : "\t",
```
Be sure "Indent Using Spaces" is unchecked otherwise you will not see effect and ST2 will convert it back to spaces.
Be sure "Indent Using Spaces" is unchecked otherwise you will not see effect and ST2/3 will convert it back to spaces
## Thanks