farextract(1)

πŸ’– farextract β€” extract FSTs from a finite-state archive πŸ’–

okay bestie, so this is farextract, part of the OpenFst squad, and it does exactly what it says on the tin: it pulls FSTs out of a finite-state archive. that's it. that's the whole job. she's an unarchiver and she's iconic for it ✨


🌸 SYNOPSIS 🌸

farextract [OPTIONS] [in1.far in2.far...]

so you hand her some .far files (or not, she's flexible like that) plus whatever options you're feeling, and she extracts. slay 🫢


πŸ¦‹ DESCRIPTION πŸ¦‹

Extracts FSTs from a finite-state archive. periodt. no notes, no plot twist, no lore β€” she takes FSTs out of the archive, done πŸ’…


✨ OPTIONS ✨

quick vibe check before we dive in: <highlight>Boolean options</highlight> accept either true or false as a value, or the implicit value true if you don't specify a value at all. so yes bestie, you can just say the flag and she'll assume true β€” she's generous like that 😌

  • --filename_prefix=STRING β€” sets the prefix that gets prepended to filenames. default: no prefix. she's giving ✨nameless but free✨
  • --filename_suffix=STRING β€” sets the suffix that gets appended to filenames. default: no suffix. lowkey minimalist πŸ’…
  • --fst_align[=BOOLEAN] β€” write FST data aligned where appropriate. default: false.
  • --fst_compat_symbols[=BOOLEAN] β€” require symbol tables to match when appropriate. default: true. she will be checking receipts, no cap 🧾
  • --fst_default_cache_gc[=BOOLEAN] β€” enable garbage collection of cache. default: true. take out the trash, queen πŸ—‘οΈβœ¨
  • --fst_default_cache_gc_limit=N β€” sets the cache byte size that triggers garbage collection. default: 1048576.
  • --fst_error_fatal[=BOOLEAN] β€” if true, FST errors are fatal. otherwise, returned objects are flagged as bad. for example, FSTs are returned with the kError property set to true, and FST weights set so that Member() returns false. default: true. so by default she does NOT do casual error handling β€” an error is an error is an error πŸ’€
  • --fst_field_separator=STRING β€” sets the characters used as a separator between printed fields. default: " ".
  • --fst_read_mode=STRING β€” sets the default file reading mode for mappable files, either "read" or "map". default: "read".
  • --fst_verify_properties[=BOOLEAN] β€” verify fst properties queried by TestProperties. default: false.
  • --fst_weight_parentheses=STRING β€” sets the characters enclosing the first weight of a printed composite weight (e.g., pair weight, tuple weight, and derived classes) to ensure proper I/O of nested composite weights. must have size 0 (none) or 2 (open and close parenthesis). default: no parentheses. pls don't give her 1 or 7 characters, she will be upset πŸ™ˆ
  • --fst_weight_separator=CHARACTER β€” sets the character separator between printed composite weights. default: comma.
  • --generate_filenames=N β€” generate N digit numeric filenames. default: use keys.
  • --help[=BOOLEAN] β€” show usage information. default: false. she'll explain herself, bestie πŸ“–
  • --helpshort[=BOOLEAN] β€” show brief usage information. default: false. the TL;DR version, for when your attention span is cooked πŸ’€
  • --keys=KEYS β€” extract a set of keys. ranges of keys are separated by --range-delimiter. distinct groups of keys are separated by --key-separator. she's picky (affectionate) πŸŽ€
  • --key-separator=CHARACTER β€” sets the character separator between groups of keys. default: comma.
  • --range-delimiter=CHARACTER β€” sets the character separator between the start and end keys of a range. default: hyphen.
  • --save_relabel_ipairs=FILENAME β€” save input relabel pairs to file. default: do not save.
  • --save_relabel_opairs=FILENAME β€” save output relabel pairs to file. default: do not save.
  • --tmpdir=PATHNAME β€” sets the temporary directory to use. default: /tmp.
  • --v[=N] β€” sets the verbosity level. default: 0. crank it up if you want her to yap πŸ—£οΈ

okay real talk for a sec: that --fst_error_fatal thing is not a joke. when it's true (which it is by default), FST errors are fatal. if you want the softer "flag it as bad and keep going" behaviour, you've gotta flip it to false yourself. know before you go 🫢

πŸ‘€ SEE ALSO πŸ‘€

her besties, the whole far-squad, all doing their own little jobs:

farcompilestrings(1), farcreate(1), farequal(1), farinfo(1), farisomorphic(1), farprintstrings(1)

go say hi, they don't bite πŸ’–


and that's the whole page bestie!! this one's from OpenFst 1.8.5, dated Mar 2026 β€” so like, cite her properly if you're being academic about it πŸŽ€ mwah, go extract something iconic πŸ’…βœ¨

πŸ“¦ where this page comes from