diff options
author | Nikos Mavrogiannopoulos <nmav@gnutls.org> | 2011-09-20 18:59:12 +0200 |
---|---|---|
committer | Nikos Mavrogiannopoulos <nmav@gnutls.org> | 2011-09-20 18:59:18 +0200 |
commit | cd0c4c57e7326a36402da2ba05e749eff0c1b534 (patch) | |
tree | 28d4d7e0d17c56e0a1405d1d3eedb408df411cfc /doc/scripts | |
parent | 521230b3fb19090d66ddd43700ce9d7ee2b496e9 (diff) | |
download | gnutls-cd0c4c57e7326a36402da2ba05e749eff0c1b534.tar.gz |
Added missing files
Diffstat (limited to 'doc/scripts')
-rwxr-xr-x | doc/scripts/split-texi.pl | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/doc/scripts/split-texi.pl b/doc/scripts/split-texi.pl new file mode 100755 index 0000000000..bd6e11e1c2 --- /dev/null +++ b/doc/scripts/split-texi.pl @@ -0,0 +1,57 @@ +#!/usr/bin/perl + +$dir = shift; +$param2 = shift; + +if ($param2 ne '') { + $enum = 1; +} else { + $enum = 0; +} + +sub key_of_record { + local($record) = @_; + + # Split record into lines: + my @lines = split /\n/, $record; + + my ($i) = 1; + my ($key) = $lines[$i]; + + if ($enum == 1) { + while( !($key =~ m/^$\@float Table,(.*)$/) && ($i < 5)) { $i=$i+1; $key = $lines[$i]; } + } else { + while( !($key =~ m/^$\\functionTitle\{(.*)\}/) && ($i < 5)) { $i=$i+1; $key = $lines[$i]; } + } + + return $key; +} + +if ($enum == 1) { + $/="\n\@end float"; # Records are separated by blank lines. +} else { + $/="\n\\end{function}"; # Records are separated by blank lines. +} +@records = <>; # Read in whole file, one record per array element. + +mkdir $dir; + +@records = sort { key_of_record($a) cmp key_of_record($b) } @records; +foreach (@records) { + $key = $_; + if ($enum == 1) { + $key =~ m/\@float Table,(.*)/; + $key = $1; + } else { + $key =~ m/\\functionTitle\{(.*)\}/; + $key = $1; + } + + if (defined $key && $key ne "") { + open FILE, "> $dir/$key\n" or die $!; + print FILE $_ . "\n"; + close FILE; + } +} + +#print @records; |