]> granicus.if.org Git - jq/commitdiff
Docs fixes.
authorStephen Dolan <mu@netsoc.tcd.ie>
Mon, 22 Oct 2012 21:56:56 +0000 (22:56 +0100)
committerStephen Dolan <mu@netsoc.tcd.ie>
Mon, 22 Oct 2012 21:56:56 +0000 (22:56 +0100)
 - Mention homebrew on download page (#25)
 - Document 'keys' and string interpolation

docs/content/2.download/default.yml
docs/content/3.manual/manual.yml

index 54f4d78b3f851f9c0c8fef7b15dd243e81b94327..d1deb300babf2a7988b4717f0f28517ff8a8c5e5 100644 (file)
@@ -9,6 +9,7 @@ body:
     
        * [Download binary for 64-bit Linux](linux_x86_64/jq)
        * [Download binary for OS X](osx_64/jq)
+         (or use [homebrew](http://mxcl.github.com/homebrew/): `brew install jq`) 
        * [Download source](source/jq.tgz)
 
       The binaries should just run, but you may need to make them
index 4ec88c28f10048c387ddf41d013ccaea399255d6..9039caf52319e1c26417abbbeef7d8e5e128d49a 100644 (file)
@@ -373,6 +373,23 @@ sections:
             input: '[[1,2], "string", {"a":2}, null]'
             output: [2, 6, 1, 0]
 
+      - title: `keys`
+        body: |
+          
+          The builtin function `keys`, when given an object, returns
+          its keys in an array.
+
+          The keys are sorted "alphabetically", by unicode codepoint
+          order. This is not an order that makes particular sense in
+          any particular language, but you can count on it being the
+          same for any two objects with the same set of keys,
+          regardless of locale settings.
+
+        examples:
+          - program: 'keys'
+            input: '{"abc": 1, "abcd": 2, "Foo": 3}'
+            output: ['["Foo", "abc", "abcd"]']
+
       - title: `map(x)`
         body: |
 
@@ -434,24 +451,15 @@ sections:
             input: '[1, "1", [1]]'
             output: ['"1"', '"1"', '"[1]"']
 
-      - title: "String interpolation - `@(text)`"
+      - title: "String interpolation - `\(foo)`"
         body: |
 
-          jq supports an alternative syntax for strings. Instead of
-          "foo", you can write `@(foo)`. When using this syntax,
-          `%(expression)` may be used to insert the value of
-          `expression` into the string (converted with `tostring`).
-
-          String interpolation does not occur for normal double-quoted
-          strings (like `"foo"`) in order to be fully compatible with
-          JSON.
-
-          All of the usual JSON escapes (`\n`, `\r` and the like) work
-          inside `@()`-quoted strings, as well as `\%` and `\)` if
-          those characters are needed literally.
+          Inside a string, you can put an expression inside parens
+          after a backslash. Whatever the expression returns will be
+          interpolated into the string.
 
         examples:
-          - program: '@(The input was %(.), which is one less than %(.+1))'
+          - program: '"The input was \(.), which is one less than \(.+1)"'
             input: '42'
             output: ['"The input was 42, which is one less than 43"']