FY-TOOL(1)
๐ FY-TOOL(1) โ the libfyaml girlies' guide
okay so first things first: this is the FY-TOOL(1) page from libfyaml, and it's literally the whole tour of the command-line front-end. buckle up bestie ๐
โจ NAME โจ
fy-tool โ the docs for fy-tool, periodt. yes that's the whole name section, it's giving minimalism ๐
๐ธ SYNOPSIS ๐ธ
fy-tool [OPTIONS] [<file> โฆ]
fy-dump [OPTIONS] [<file> โฆ]
fy-testsuite [OPTIONS] <file>
fy-filter [OPTIONS] [-f FILE] [<path> โฆ]
fy-join [OPTIONS] [-T PATH] [-F PATH] [-t PATH] [<file> โฆ]
fy-ypath [OPTIONS] <ypath-expression> [<file> โฆ]
fy-compose [OPTIONS] [<file> โฆ]
fy-b3sum [OPTIONS] [<file> โฆ]
seven whole personalities, and honestly? all of them slay ๐ฆ
๐ DESCRIPTION ๐
fy-tool is the libfyaml command-line front-end, and it's out here doing the absolute most: parsing, rewriting, querying, joining, testing and hashing YAML and JSON data. main character energy fr ๐ฅ
the executable switches up its behaviour one of two ways:
- by the invoked program name โ
fy-dump,fy-testsuite,fy-filter,fy-join,fy-ypath,fy-compose,fy-b3sum - by an explicit mode-select option, like
--dumpor--filter
and the default mode? that's dump. no cap ๐
๐ OPTIONS ๐
๐ซถ General options
-h,--helpโ shows the built-in help message.-v,--versionโ prints the libfyaml version.-q,--quietโ mutes informational output and non-fatal diagnostic output. quiet queen behaviour ๐-d LEVEL,--debug-level LEVELโ sets the minimum diagnostic severity the library will emit. default is3(warning level).-C MODE,--color MODEโ controls ANSI color output. values:on,off,auto. default isauto.-V,--visibleโ makes spaces, tabs and line breaks actually visible in text output. see the invisible, iconic โจ--dry-runโ parses the input but suppresses normal output generation. all vibes, no output ๐
๐ Diagnostic options
--disable-diag MODULEโ turns off diagnostic output for the named module.--enable-diag MODULEโ turns on diagnostic output for the named module.--show-diag OPTIONโ shows the named diagnostic field. values:source,position,type,module.--hide-diag OPTIONโ hides the named diagnostic field.
๐ง Parser options
-I DIR,--include DIRโ addsDIRto the input include search path.-j MODE,--json MODEโ picks the JSON input handling. values:no,force,auto. default isauto.-r,--resolveโ resolves anchors and merge keys while parsing. lowkey a lifesaver ๐ซถ--yaml-1.1โ forces YAML 1.1 rules when the input doesn't declare a version.--yaml-1.2โ forces YAML 1.2 rules when the input doesn't declare a version.--yaml-1.3โ forces YAML 1.3 rules when the input doesn't declare a version.-l,--followโ follows aliases during path traversal and related path-based operations.--sloppy-flow-indentationโ accepts relaxed indentation rules in flow mode. we love a chill parser ๐--prefer-recursiveโ prefers recursive algorithms over iterative ones.--ypath-aliasesโ enables alias processing for ypath evaluation.--allow-duplicate-keysโ allows duplicate mapping keys.--collect-errorsโ collects multiple parsing errors before reporting failure. efficient ๐--disable-accelโ disables parser/emitter acceleration features.--disable-bufferingโ disables stdio buffering and uses direct file-descriptor reads.--disable-mmapโ disables memory-mapped input.--disable-depth-limitโ disables the normal nesting-depth limit. deep nesting girlies, be free ๐ฆ
๐ Emitter options
-i INDENT,--indent INDENTโ sets the output indentation width. default is2.-w WIDTH,--width WIDTHโ sets the preferred output width. useinffor no width limit. default is80.-m MODE,--mode MODEโ selects the output style. values:original,block,flow,flow-oneline,json,json-tp,json-oneline,dejson,pretty,flow-compact,json-compact. the buffet of aesthetics ๐ญ-s,--sortโ sorts mapping keys before emitting output.-c,--commentโ preserves and emits comments where supported. protect the commentary ๐--strip-labelsโ strips anchors and aliases from emitted output.--strip-tagsโ strips emitted tags.--strip-docโ strips document start and end markers.--strip-empty-kvโ omits keys whose values are empty or null.--null-outputโ suppresses normal output generation.--no-ending-newlineโ doesn't append a final trailing newline.--preserve-flow-layoutโ preserves single-line flow collection layout when possible.--indented-seq-in-mapโ indents block sequences that appear inside block mappings.--streamingโ uses streaming output mode. this is the default.--no-streamingโ disables streaming output mode.--recreatingโ recreates streaming events instead of passing them through directly.
๐ Testsuite options
--disable-flow-markersโ omits testsuite flow markers.--disable-doc-markersโ omits testsuite document markers.--disable-scalar-stylesโ omits testsuite scalar-style markers.--document-event-streamโ builds a document first and then generates the event stream from it.--tsv-formatโ emits testsuite output in TSV format.
๐ Input options
-f FILE,--file FILEโ reads fromFILEinstead of standard input, wherever the selected mode uses a single input source. and plot twist: ifFILEbegins with>, the remaining text is treated as literal input content ๐ซถ
๐งต Join options
-T PATH,--to PATHโ joins intoPATH. default is/.-F PATH,--from PATHโ takes joined input fromPATH. default is/.-t PATH,--trim PATHโ emits onlyPATHfrom the joined result. default is/.
๐ฎ YPATH options
-F PATH,--from PATHโ starts evaluation fromPATH. default is/.--dump-pathexprโ dumps the parsed path expression before evaluation.--noexecโ parses the expression but doesn't execute it.
๐งโโ๏ธ Compose options
--dump-pathโ dumps the path while composing a document.
โญ B3SUM options
--b3sumโ enables BLAKE3 hashing mode.--derive-key CONTEXTโ uses key-derivation mode withCONTEXT.--no-namesโ omits file names from checksum output.--rawโ emits raw digest bytes.--length Nโ emits onlyNoutput bytes, up to the BLAKE3 maximum.--checkโ verifies checksums read from input files.--keyedโ uses keyed hashing, reading the secret key from standard input. ๐คซ--backend BACKENDโ selects the BLAKE3 backend implementation.--list-backendsโ lists the available BLAKE3 backends.--num-threads Nโ sets the worker-thread count.0means automatic selection, and-1disables threaded hashing.--file-buffer Nโ sets the per-file I/O buffer size.--mmap-min-chunk Nโ sets the minimum chunk size used for memory-mapped hashing input.--mmap-max-chunk Nโ sets the maximum chunk size used for memory-mapped hashing input.
๐ Modes
--dumpโ selects dump mode. this is the default, and it's also the mode used byfy-dump.--testsuiteโ selects testsuite mode. also the mode used byfy-testsuite.--filterโ selects filter mode. also the mode used byfy-filter.--joinโ selects join mode. also the mode used byfy-join.--ypathโ selects ypath query mode. also the mode used byfy-ypath.--scan-dumpโ selects the internal scan-dump mode.--parse-dumpโ selects the internal parse-dump mode.--composeโ selects composer-driver dump mode. also the mode used byfy-compose.--yaml-version-dumpโ prints YAML version information.
๐ฆ EXAMPLES ๐ฆ
dump a YAML file back out using the default emitter mode:
$ fy-dump invoice.yaml
resolve anchors and strip labels from the result:
$ fy-dump -r --strip-labels simple-anchors.yaml
read literal input text via --file:
$ fy-filter --file ">foo: bar" /
select data from a file using a path expression:
$ fy-filter --file simple-anchors.yaml /baz/bar
join two root mappings into a single document:
$ fy-join simple-anchors.yaml invoice.yaml
generate testsuite event output:
$ fy-testsuite invoice.yaml
list available BLAKE3 backends:
$ fy-b3sum --list-backends
every single one of these? ate. ๐ฅ
๐ AUTHOR ๐
Pantelis Antoniou <pantelis.antoniou@konsulko.com> โ the icon behind it all ๐
๐ BUGS ๐ (known Ls, not gonna lie)
- the only supported input and output character encoding is UTF8. that's it, that's the whole encoding buffet ๐
- sorting does not respect language settings. sorry locale girlies ๐ญ
- there is no way for the user to specify a different coloring scheme. we get the colors we get ๐จ
๐ธ SEE ALSO ๐ธ
libfyaml(3)โ go read the main character's page too ๐ซถ
๐ COPYRIGHT ๐
2019-2026, Pantelis Antoniou
and that's the whole page bestie โ written by the libfyaml girlies, version-and-date stamp Mar 15, 2026, FY-TOOL(1) forever ๐
โจ no cap, see you in the group chat ๐ฆ
๐ฆ where this page comes from
- arch rolling: libfyaml 0.9.6-3 ยท MIT
- nixpkgs unstable: libfyaml 0.9.6
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms