Add json1 format that ignores tabs

The new json1 format works just like json except that it treats tabs as
single characters instead of 8-character tabstops.

The main use case is to allow editors to pass -fjson1 so that they can
consume the json output in a character-oriented way without breaking
backwards compatibility.

Also addresses #1048.
This commit is contained in:
Benjamin Gordon
2019-05-07 15:49:34 -06:00
parent 5fb1da6814
commit 50af8aba29
5 changed files with 33 additions and 7 deletions

View File

@@ -153,7 +153,7 @@ not warn at all, as `ksh` supports decimals in arithmetic contexts.
: Json is a popular serialization format that is more suitable for web
applications. ShellCheck's json is compact and contains only the bare
minimum.
minimum. Tabs are 8 characters.
[
{
@@ -167,6 +167,11 @@ not warn at all, as `ksh` supports decimals in arithmetic contexts.
...
]
**json1**
: This is the same as shellcheck's json format, but tabs are treated as
single characters instead of 8-character tabstops.
*quiet*
: Suppress all normal output. Exit with zero if no issues are found,