#! /usr/bin/perl -w # Converts a kde Color-Scheme to a Palette use strict; use warnings; use File::Basename; @ARGV == 1 or die "I need exactly one argument, a path to a .colors file"; my $dir = `kde4-config --localprefix`; chomp $dir; $dir = $dir."share/config/colors"; my $file = $ARGV[0]; my $name = basename($file, ".colors"); open(FILE, $file) or die $!; my @lines; while () { if (/(.*)=(\d{1,3}),(\d{1,3}),(\d{1,3})/) { my $line = "$2 $3 $4\t$1\n"; push(@lines, $line); } } close FILE; @lines = sort(@lines); # doesn't work, sorts as string not number open(OUT, '>', "$dir/$name") or die $!; print OUT "KDE RGB Palette\n"; print OUT "#\n"; foreach (@lines) { print OUT; } close OUT;