summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/scripts/texlive/fmtutil.pl
diff options
context:
space:
mode:
authorNorbert Preining <preining@logic.at>2015-06-14 23:07:27 +0000
committerNorbert Preining <preining@logic.at>2015-06-14 23:07:27 +0000
commit9c9c9e3293bf5c7dcb873197bd7efdab74f015c3 (patch)
treeb06bdbb995fdc88fef404a8ca12bca07b48fe45e /Master/texmf-dist/scripts/texlive/fmtutil.pl
parent4cad9cf047cf4bb824a71c8af70edee1b20874f1 (diff)
fmtutil: implement --listcfg
git-svn-id: svn://tug.org/texlive/trunk@37538 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/scripts/texlive/fmtutil.pl')
-rwxr-xr-xMaster/texmf-dist/scripts/texlive/fmtutil.pl21
1 files changed, 20 insertions, 1 deletions
diff --git a/Master/texmf-dist/scripts/texlive/fmtutil.pl b/Master/texmf-dist/scripts/texlive/fmtutil.pl
index cca5f221bdc..b8b73efe3f2 100755
--- a/Master/texmf-dist/scripts/texlive/fmtutil.pl
+++ b/Master/texmf-dist/scripts/texlive/fmtutil.pl
@@ -228,7 +228,7 @@ sub main {
print_warning("--catcfg command not supported anymore!\n");
exit(1);
} elsif ($opts{'listcfg'}) {
- print_warning("--listcfg currently not implemented, be patient!\n");
+ return callback_list_cfg();
exit(1);
} elsif ($opts{'disablefmt'}) {
return callback_enable_disable_format($changes_config_file,
@@ -732,6 +732,25 @@ sub callback_enable_disable_format {
}
}
+sub callback_list_cfg {
+ my @lines;
+ for my $f (keys %{$alldata->{'merged'}}) {
+ for my $e (keys %{$alldata->{'merged'}{$f}}) {
+ my $orig = $alldata->{'merged'}{$f}{$e}{'origin'};
+ my $hyph = $alldata->{'merged'}{$f}{$e}{'hyphen'};
+ my $stat = $alldata->{'merged'}{$f}{$e}{'status'};
+ my $args = $alldata->{'merged'}{$f}{$e}{'args'};
+ push @lines,
+ [ "$f/$e/$hyph",
+ "$f (engine = $e) $stat\n hyphen=$hyph, args=$args\n origin=$orig\n" ];
+ }
+ }
+ # sort lines
+ @lines = map { $_->[1] } sort { $a->[0] cmp $b->[0] } @lines;
+ print "List of all formats:\n";
+ print @lines;
+}
+
sub read_fmtutil_files {
my (@l) = @_;
for my $l (@l) { read_fmtutil_file($l); }