#!/usr/bin/perl -s

use common::sense;
use File::Slurp;

our $n ||= 80;

my @files = <original/*.txt>;

mkdir "out" unless -d "out";

for my $file (@files) {
    next unless $file =~ m!(?:^|/)..(?:-...?)?\.txt$!;

    $file =~ m!(?:^|/)(..(?:-...?)?)\.txt$!;
    my $lang = $1;

    print STDERR "Splitting $file [$lang]";
    my @lines = read_file $file, binmode => 'utf8';
    my $nrlines = @lines;
    my $lpf = int($nrlines/$n);
    printf STDERR " (%d lines per file)\n", $lpf;

    my $i = 0;
    while ($i < $n) {
        my $j = 0;

        open  OUT, ">:utf8", sprintf("out/%s_%02d.txt", $lang, $i);
        while ($j++ < $lpf) {
            print OUT $lines[$i * $lpf + $j];
        }
        close OUT;

        ++$i;
    }
}
