commit 580057bef710ec62a8c1f77380f90c312891bddf
Author: Kornel Benko
Date: Thu May 21 11:50:42 2020 +0200
Tools(listFontWithLang.pl): Polishing
---
development/tools/GetOptions.pm |9 +++-
development/tools/listFontWithLang.pl | 36 +++-
2 files changed, 29 insertions(+), 16 deletions(-)
diff --git a/development/tools/GetOptions.pm b/development/tools/GetOptions.pm
index 0b69f79..5660b02 100644
--- a/development/tools/GetOptions.pm
+++ b/development/tools/GetOptions.pm
@@ -102,7 +102,14 @@ sub handleOptions($)
print "" . "-" x 32 . "\n";
for my $k (sort keys %options) {
if (defined($options{$k})) {
-printf("%-16s%s\n", $k, $options{$k});
+my $val;
+if (ref($options{$k}) eq "ARRAY") {
+ $val = join(',', @{$options{$k}});
+}
+else {
+ $val = $options{$k};
+}
+printf("%-16s%s\n", $k, $val);
}
else {
print "$k\n";
diff --git a/development/tools/listFontWithLang.pl
b/development/tools/listFontWithLang.pl
index 342e70e..5e19728 100644
--- a/development/tools/listFontWithLang.pl
+++ b/development/tools/listFontWithLang.pl
@@ -719,17 +719,12 @@ sub getweight($$)
{
my ($fontname, $style) = @_;
my $result = undef;
- for my $key (keys %weights) {
-next if ($key !~ /^\d+$/);
-my $val = $weights{$key};
-for my $info ($style, $fontname) {
+ for my $info ($style, $fontname) {
+for my $key (keys %weights) {
+ next if ($key !~ /^\d+$/);
+ my $val = $weights{$key};
if ($info =~ /\b$val\b/i) {
-if ($val eq "Regular") {
- $result = $val;# It may refer to width
-}
-else {
- return($val);
-}
+return($val);
}
}
}
@@ -777,7 +772,7 @@ sub getspacing($$)
return($spacings{$key});
}
}
- if ("$fontname $style" =~ /(mono|typewriter|cursor|fixed)\b/i) {
+ if ("$fontname $style" =~ /(\bmono\b|luximono|typewriter|cursor|fixed)\b/i) {
return($spacings{100}); # Mono
}
else {
@@ -811,8 +806,19 @@ sub getproperties()
my $val1 = $rget->($newfam, $newstyle);
my $val;
if (defined($val2) && defined($val1) && ($val2 ne $val1)) {
- push(@{$rerrors}, "Fontname($fontname),Style($style): Values for $txt
($val1 != $val2) differ, selecting internal $txt($val2)");
- $val = $val2;
+ if (($txt =~/^(weight|slant)$/) && ($newstyle =~ /$val1/)){
+# style overrides weight and slant
+push(@{$rerrors}, "Fontname($fontname),Style($style): Values for $txt
($val1 != $val2) differ, pick $val1 from style");
+$val = $val1;
+ }
+ elsif ($newfam =~ /$val1/) {
+push(@{$rerrors}, "Fontname($fontname),Style($style): Values for $txt
($val1 != $val2) differ, pick $val1 from fontname");
+$val = $val1;
+ }
+ else {
+push(@{$rerrors}, "Fontname($fontname),Style($style): Values for $txt
($val1 != $val2) differ, pick $val2 from $txt-property");
+$val = $val2;
+ }
}
elsif (! defined($val2)) {
$val = $val1;
@@ -869,6 +875,7 @@ sub correctstyle($)
$style =~ s/\b(SC|Small(caps(alt)?)?)\b/SmallCaps/i;
$style =~ s/w3 mono/Dual/i;
$style =~ s/Regul[ea]r/Regular/i;
+ $style =~ s/Megablack/ExtraBlack/i;
$style =~ s/ +/ /g;
return($style);
}
@@ -921,9 +928,8 @@ sub decimalUnicode($)
}
-# check if the glyph-value $d is contained
+# check if the glyph-values in interval @{$ri} are contained
# in one of the (sorted) intervals
-# Inputs as intervals
sub contains($$)
{
# ok if
--
lyx-cvs mailing list
lyx-cvs@lists.lyx.org
http://lists.lyx.org/mailman/listinfo/lyx-cvs