HFST-COMPARE(1)

πŸ“¦
version 3.17.1 Β· 2 versions
  • 3.17.1 Β· debian bookworm, debian trixie, nixos 26.05, opensuse-leap 16.0, ubuntu jammy, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking (latest)
  • 3.17.3 Β· nixpkgs unstable
, in debian bookworm, debian trixie, nixos 26.05, opensuse-leap 16.0, ubuntu jammy, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking

ok so bestie, you just opened the manual for hfst-compare(1) β€” it lives in the User Commands section of the HFST man pages, and honestly? it's giving tiny but mighty. ✨

It compares two transducers. That's the whole gig. And it ate. πŸ’…


πŸŽ€ NAME πŸŽ€

hfst-compare β€” compare two transducers πŸ’–

(also yes the original literally has a stray = in front of "Compare" up there. iconic. we move.) πŸ™ˆ


πŸ“œ SYNOPSIS πŸ“œ

hfst-compare [OPTIONS...] [INFILE1 [INFILE2]]

πŸ’… DESCRIPTION πŸ’…

So the vibe is: compare two transducers. That's it, that's the mission. πŸ¦‹

✨ Common options ✨

The little group-chat settings everybody shares:

  • -h, --help β€” prints the help message, aka the "wait what do I type" button 🫢
  • -V, --version β€” prints version info, so you can tell everyone which era of HFST you're on ⭐
  • -v, --verbose β€” print verbosely while processing, i.e. it narrates its life to you 🌸
  • -q, --quiet β€” only print fatal erros and requested output. (that typo is theirs, not mine, and I'm obsessed 😭) so basically: silence unless something's truly wrong or you asked for it πŸ’€
  • -s, --silent β€” alias of --quiet. same energy, different name, no notes. 🌈

πŸ¦‹ Input/Output options πŸ¦‹

Where the transducers come in and where the tea gets spilled:

  • -1, --input1=INFILE1 β€” read the first input transducer from INFILE1 πŸ‘‘
  • -2, --input2=INFILE2 β€” read the second input transducer from INFILE2 πŸ’œ
  • -C, --do-not-convert β€” do not allow transducers to be converted into the same type. like, they stay exactly as they are, no glow-ups allowed 🚫✨
  • -o, --output=OUTFILE β€” write results to OUTFILE πŸ“

🌸 Harmonization 🌸

Getting everybody on the same page, symbol-wise:

  • -H, --do-not-harmonize β€” do not harmonize symbols. πŸ›‘
  • -e, --eliminate-flags β€” eliminate flag diacritics. bye bestie πŸ‘‹

Now the fine print, and bestie you do need this part:

If OUTFILE, or either INFILE1 or INFILE2 is missing or -, standard streams will be used. INFILE1, INFILE2, or both, must be specified. The format of the result depends on the format of INFILE1 and INFILE2; both should have the same format. 🧚

The operation is applied pairwise for INFILE1 and INFILE2, which must have the same number of transducers. But if INFILE2 has only one transducer, the operation is applied for each transducer in INFILE1 while keeping that second transducer constant. lowkey generous of it πŸ’–


🌈 EXAMPLES 🌈

Watch and learn, this is the moment:

$ hfst-compare cat.hfst dog.hfst

cat.hfst[1] != dog.hfst[1] $ hfst-compare cat.hfst cat.hfst
cat.hfst[1] == cat.hfst[1]

Cats and dogs are not the same transducer, but a cat is very much equal to itself. slay. 🐱🐢


😭 REPORTING BUGS 😭

Found something cursed? Report bugs to <hfst-bugs@helsinki.fi> or directly to our bug tracker at: <https://github.com/hfst/hfst/issues> πŸ›


Copyright Β© 2017 University of Helsinki, License GPLv3: GNU GPL version 3 <http://gnu.org/licenses/gpl.html>

This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. fr fr, no cap, read the license πŸ’€


tl;dr: give it two transducers, it tells you if they're the same. everything else is vibes and flags. iykyk πŸ’…

and that's the whole page bestie 🫢 this is from the HFST manual set, dated August 2018, filed under HFST-COMPARE(1). go forth and compare. πŸŽ€βœ¨

πŸ“¦ where this page comes from