X-Git-Url: https://git.sur5r.net/?p=i3%2Fi3;a=blobdiff_plain;f=docs%2Flayout-saving;h=f31b5e21ab367b48740d189e5a208a021aba15c4;hp=e90ecada87fdb35c3c4727d55b86faccaa812e74;hb=3bfcbb88bf9bd45913a81c7ed3d3c01d0ce22ef5;hpb=83327abae4de321b1ca5acb7fe0893d4bd111028 diff --git a/docs/layout-saving b/docs/layout-saving index e90ecada..f31b5e21 100644 --- a/docs/layout-saving +++ b/docs/layout-saving @@ -219,13 +219,15 @@ the window which matches any of the criteria. As an example: A layout file as generated by +i3-save-tree(1)+ is not strictly valid JSON: -1. Layout files contain multiple “JSON documents” on the top level, whereas the - JSON standard only allows precisely one “document” (array or hash). +1. Layout files contain multiple “JSON texts” at the top level. The JSON + standard doesn't prohibit this, but in practice most JSON parsers only + allow precisely one “text” per document/file, and will mark multiple texts + as invalid JSON. -2. Layout files contain comments which are not standardized, but understood by - many parsers. +2. Layout files contain comments which are not allowed by the JSON standard, + but are understood by many parsers. -Both deviations from the JSON standard are to make manual editing by humans +Both of these deviations from the norm are to make manual editing by humans easier. In case you are writing a more elaborate tool for manipulating these layouts, you can either use a JSON parser that supports these deviations (for example libyajl), transform the layout file to a JSON-conforming file, or