forked from e16/e16
1
0
Fork 0

e_gen_menu: menu generation speedups

Patch by Thanatermesis
This commit is contained in:
Kim Woelders 2019-10-03 17:50:51 +02:00
parent 04ec9834d9
commit 8a62cc19f9
1 changed files with 22 additions and 15 deletions

View File

@ -199,14 +199,28 @@ sub ProcessFile {
if (/^\[(\w+)\s+(\w+)/) {
# Note: This breaks if [Desktop Entry] is not the first
last if (($1 ne "Desktop") or ($2 ne "Entry"));
} elsif (/^Name=(.*)$/) {
$Name = $1;
} elsif ($loc1 && /^Name\[$loc1\]=(.*)$/) {
$Nam1 = $1;
} elsif ($loc2 && /^Name\[$loc2\]=(.*)$/) {
$Nam2 = $1;
} elsif ($loc3 && /^Name\[$loc3\]=(.*)$/) {
$Nam3 = $1;
}
# skip early for the unneeded ones (important optimization):
next if (/^(#|Comment|GenericName|Keywords|TryExec|Icon\[|StartupNotify|MimeType|NotShowIn|DBusActivatable|X-|Version|TargetEnvironment|MultipleArgs|Encoding|Actions)/);
if (/^Name/) {
if (/^Name=(.*)$/) {
$Name = $1;
} elsif ($loc1 && /^Name\[$loc1\]=(.*)$/) {
$Nam1 = $1;
} elsif ($loc2 && /^Name\[$loc2\]=(.*)$/) {
$Nam2 = $1;
} elsif ($loc3 && /^Name\[$loc3\]=(.*)$/) {
$Nam3 = $1;
}
if ($Nam1 || $Nam2 || $Nam3) {
if ($Nam1) { $Name = $Nam1; }
elsif ($Nam2) { $Name = $Nam2; }
else { $Name = $Nam3; }
$Name = `echo "$Name" | iconv -f UTF-8` if $DoIconv;
chomp($Name);
}
} elsif (/^Exec=(.*)$/) {
$Exec = $1;
} elsif (/^Icon=(.*)$/) {
@ -233,13 +247,6 @@ sub ProcessFile {
} elsif (/^NoDisplay=(.*)$/) {
$Ndis = $1;
}
if ($Nam1 || $Nam2 || $Nam3) {
if ($Nam1) { $Name = $Nam1; }
elsif ($Nam2) { $Name = $Nam2; }
else { $Name = $Nam3; }
$Name = `echo "$Name" | iconv -f UTF-8` if $DoIconv;
chomp($Name);
}
}
close FI;