#!/usr/bin/perl use MDK::Common; sub get { my ($meta_class) = @_; my @l; local *F; open F, "../compssUsers$meta_class" or return; #die "can't open file ../compssUsers$meta_class"; foreach () { /^\s*$/ || /^#/ and next; if (/^(\S.*)/) { my ($icon, $path, $descr, $selected); /^(.*?)\s*\[icon=(.*?)\](.*)/ and $_ = "$1$3", $icon = $2; /^(.*?)\s*\[path=(.*?)\](.*)/ and $_ = "$1$3", $path = $2; /^(.*?)\s*\[descr=(.*?)\](.*)/ and $_ = "$1$3", $descr = $2; /^(.*?)\s*\[selected=(.*?)\](.*)/ and $_ = "$1$3", $selected = $2; push @l, $_, $descr, $path; } } close F; @l; } my @l = map { if_(/msgid "(.*)"/, $1) } cat_("DrakX.pot"); my %l; @l{@l} = (); foreach (uniq(get(''), get('.desktop'))) { if ($_) { s/"/\"/g; s/\n//g; next if exists $l{$_}; print qq( #: ../../share/compssUsers:999 msgid "$_" msgstr "" ); } }