funixtools 0.2.2

Some fun unix tools for my own use
Documentation
use clap::Parser;
use color_eyre::eyre::Result;
use itertools::join;
use std::{collections::BTreeSet, fs};

#[derive(Debug, Parser)]
struct Cli {
    #[clap(short, long, default_value_t=String::from("\n"))]
    separator: String,
    left: String,
    right: String,
}

fn main() -> Result<()> {
    let cli = Cli::parse();
    color_eyre::install()?;
    let left_input = fs::read_to_string(cli.left)?;
    let right_input = fs::read_to_string(cli.right)?;
    let left_set: BTreeSet<_> = left_input.split(&cli.separator).collect();
    let right_set: BTreeSet<_> = right_input.split(&cli.separator).collect();
    let union = left_set.union(&right_set);
    println!("{}", join(union, &cli.separator));
    Ok(())
}