Pretty printing - crownedgrouse/argos GitHub Wiki
[WIP] Pretty printing
argos:pp/1 use default options.
argos:pp(Json) -> string() | no_return()
argos:pp/2 with options :
{style, Style}where Style is an atom (see valid values below). 'k&r' by default.{nl, NL}where NL is the newline character(s). "\n" by default.{tab, Tab}where Tab is the tabulation character(s). " " (three blanks) by default.
argos:pp(Json, Options) -> string() | no_return()
Error handling :
catch argos:pp(A,[{style, unknown}]).
unknow_style
Kernighan and Ritchie's styles
'k&r'
{
"menu": {
"id": "file",
"value": "File",
"popup": {
"menuitem": [
{
"value": "New",
"onclick": "CreateNewDoc()"
},
{
"value": "Open",
"onclick": "OpenDoc()"
},
{
"value": "Close",
"onclick": "CloseDoc()"
}
]
}
}
}
'otbs'
{
"menu": {
"id": "file",
"value": "File",
"popup": {
"menuitem": [
{
"value": "New",
"onclick": "CreateNewDoc()"
},{
"value": "Open",
"onclick": "OpenDoc()"
},{
"value": "Close",
"onclick": "CloseDoc()"
}
]
}
}
}
'stroustrup'
{
"menu": {
"id": "file",
"value": "File",
"popup": {
"menuitem": [
{
"value": "New",
"onclick": "CreateNewDoc()"
}
,{
"value": "Open",
"onclick": "OpenDoc()"
}
,{
"value": "Close",
"onclick": "CloseDoc()"
}
]
}
}
}
Allman style
'allman'
{
"menu":
{
"id": "file",
"value": "File",
"popup":
{
"menuitem":
[
{
"value": "New",
"onclick": "CreateNewDoc()"
},
{
"value": "Open",
"onclick": "OpenDoc()"
},
{
"value": "Close",
"onclick": "CloseDoc()"
}
]
}
}
}
Whitesmiths' style
'whitesmiths'
{
"menu":
{
"id": "file",
"value": "File",
"popup":
{
"menuitem":
[
{
"value": "New",
"onclick": "CreateNewDoc()"
},
{
"value": "Open",
"onclick": "OpenDoc()"
},
{
"value": "Close",
"onclick": "CloseDoc()"
}
]
}
}
}
Hortsmann style
'hortsmann'
{ "menu":
{ "id": "file",
"value": "File",
"popup":
{ "menuitem":
[
{ "value": "New",
"onclick": "CreateNewDoc()"
}
,
{ "value": "Open",
"onclick": "OpenDoc()"
}
,
{ "value": "Close",
"onclick": "CloseDoc()"
}
]
}
}
}
Pico style
'pico'
{ "menu":
{ "id": "file",
"value": "File",
"popup":
{ "menuitem":
[ { "value": "New",
"onclick": "CreateNewDoc()" },
{ "value": "Open",
"onclick": "OpenDoc()" },
{ "value": "Close",
"onclick": "CloseDoc()" } ] } } }
Ratliff style
'ratliff'
{
"menu": {
"id": "file",
"value": "File",
"popup": {
"menuitem": [
{
"value": "New",
"onclick": "CreateNewDoc()"
},
{
"value": "Open",
"onclick": "OpenDoc()"
},
{
"value": "Close",
"onclick": "CloseDoc()"
}
]
}
}
}
LISP style
'lisp'
{
"menu": {
"id": "file",
"value": "File",
"popup": {
"menuitem": [
{
"value": "New",
"onclick": "CreateNewDoc()"},
{
"value": "Open",
"onclick": "OpenDoc()"},
{
"value": "Close",
"onclick": "CloseDoc()"}]}}}
GNU style (not available for now)
'gnu'
{
"menu":
{
"id": "file",
"value": "File",
"popup":
{
"menuitem":
[
{
"value": "New",
"onclick": "CreateNewDoc()"
},
{
"value": "Open",
"onclick": "OpenDoc()"
},
{
"value": "Close",
"onclick": "CloseDoc()"
}
]
}
}
}