rust-less 0.1.0

A LESS to CSS parser and converter library written in Rust
Documentation
use std::env;
use std::fs;
use std::io::Write;
use std::path::Path;
use rust_less::parse_less_file;

fn main() {
    let args: Vec<String> = env::args().collect();

    if args.len() < 2 {
        print_help();
        return;
    }

    match args[1].as_str() {
        "-h" | "--help" => {
            print_help();
        },
        "-v" | "--version" => {
            println!("rust-less v{}", env!("CARGO_PKG_VERSION"));
        },
        input_file => {
            if !input_file.ends_with(".less") {
                eprintln!("Error: Input file must have a .less extension");
                return;
            }

            let output_file = input_file.replace(".less", ".css");
            println!("Converting {} to {}", input_file, output_file);

            match parse_less_file(input_file) {
                Ok(css) => {
                    match fs::File::create(&output_file) {
                        Ok(mut file) => {
                            if let Err(e) = file.write_all(css.as_bytes()) {
                                eprintln!("Error writing to output file: {}", e);
                            } else {
                                println!("Successfully converted to {}", output_file);
                            }
                        },
                        Err(e) => eprintln!("Error creating output file: {}", e),
                    }
                },
                Err(e) => eprintln!("Error parsing LESS file: {}", e),
            }
        }
    }
}

fn print_help() {
    println!("rust-less - A LESS to CSS compiler written in Rust");
    println!("Usage: rust-less [options] <file.less>");
    println!("");
    println!("Options:");
    println!("  -h, --help     Display this help message");
    println!("  -v, --version  Display version information");
    println!("");
    println!("Examples:");
    println!("  rust-less style.less     # Converts style.less to style.css");
}