summaryrefslogtreecommitdiffstats
path: root/2020/info/25.md
diff options
context:
space:
mode:
authorSacha Chua <sacha@sachachua.com>2020-11-10 13:34:03 -0500
committerSacha Chua <sacha@sachachua.com>2020-11-10 13:34:03 -0500
commitfc01255025f3270df0f275055b3c18b1cb2d00f0 (patch)
tree5e1596af00a00e702c6619aeaf2e982afbedd39c /2020/info/25.md
parentae5c1f030b9c43a3ebae981bc2295bcabae5fc10 (diff)
downloademacsconf-wiki-fc01255025f3270df0f275055b3c18b1cb2d00f0.tar.xz
emacsconf-wiki-fc01255025f3270df0f275055b3c18b1cb2d00f0.zip
Let's try it with individual info pages that are included
Diffstat (limited to '2020/info/25.md')
-rw-r--r--2020/info/25.md21
1 files changed, 21 insertions, 0 deletions
diff --git a/2020/info/25.md b/2020/info/25.md
new file mode 100644
index 00000000..dc02874a
--- /dev/null
+++ b/2020/info/25.md
@@ -0,0 +1,21 @@
+If you are working with complex nested JSON structures, you are
+probably familiar with jq which is like sed for JSON data and great at
+what it does. However, being a command-line tool like sed, the
+feedback for writing queries and seeing their results is a discrete
+process and not live.
+
+When working with Emacs, we are used to good auto-completion and live
+feedback. Formerly, this was mostly done with static input, but with
+modern completion frameworks like Ivy and Counsel, this can be done
+with dynamic inputs, as well.
+
+counsel-jq is a package with which you can quickly test queries and
+traverse a complex JSON structure whilst having live feedback. Just
+call `M-x counsel-jq` in a buffer containing JSON, then start writing
+your `jq` query string and see the output appear live in the message
+area. Whenever you're happy, hit `RET` and the results will be
+displayed to you in the buffer `*jq-json*`.
+
+In this lightning talk, I'll give a quick overview on how to use
+counsel-jq and how to build similar completion functionality.
+