Klus3kk/clig
CLI tool for file compression and decompression, written in Zig.
clig is a command-line tool for compressing and decompressing text files using a combination of Run-Length Encoding (RLE) and dictionary-based compression. It reduces file size for repetitive and common text patterns.
the
, and
, and spaces with tokens to save space.Clone the repository:
git clone https://github.com/Klus3kk/clig.git
cd clig
Build the project:
zig build
The executable will be generated in zig-out/bin/
:
./zig-out/bin/clig
To compress a file, use:
./zig-out/bin/clig compress <input_file> <output_file>
Example:
./zig-out/bin/clig compress input.txt output.clig
To decompress a file, use:
./zig-out/bin/clig decompress <input_file> <output_file>
Example:
./zig-out/bin/clig decompress output.clig decompressed.txt
./zig-out/bin/clig compress input.txt output.clig
./zig-out/bin/clig decompress output.clig decompressed.txt
Compression:
Compressed input.txt to output.clig
Original size: 242 bytes
Compressed size: 234 bytes
Compression Ratio: 96.69%
Decompression:
Decompressed output.clig to decompressed.txt
Original size: 234 bytes
Decompressed size: 242 bytes