A minimal command-line tool to query canonical s-expressions (csexp) from stdin.
opam install csexp-querycsexp-query QUERYReads a csexp s-expression from stdin, applies the query, and outputs results (one csexp per line).
Operation | Syntax | Description |
|---|---|---|
field |
| Find |
index |
| Get Nth element (0-indexed, negative supported) |
each |
| Iterate over list elements |
pipe |
| Sequential composition |
cat |
| Concatenate results of independent queries |
this |
| Identity |
Multiple top-level expressions are implicitly piped.
# Get a field value
dune describe --format=csexp | csexp-query '(field name)'
# Get the first element
dune describe --format=csexp | csexp-query '(index 0)'
# Iterate over a list field
dune describe --format=csexp | csexp-query '(field modules) each'
# Get multiple fields
dune describe --format=csexp | csexp-query '(cat (field name) (field version))'
# Chain operations
dune describe --format=csexp | csexp-query '(index 0) (field name)'The query syntax is compatible with a subset of sexp.