insilmaril@192: #!/usr/bin/perl insilmaril@192: # insilmaril@192: # Hack to make single-line XML file easier to read by using indention insilmaril@192: # insilmaril@192: # (c) Uwe Drechsel insilmaril@192: # insilmaril@192: # License: GPL insilmaril@192: insilmaril@192: my $filename =shift; insilmaril@192: my $s; insilmaril@192: open (INFILE, "<$filename") || insilmaril@192: die "Could not read $filename."; insilmaril@192: $s=join("\n",); insilmaril@192: insilmaril@192: $s=~s/>/>\n/gm; insilmaril@192: insilmaril@192: my @lines=split ("\n",$s); insilmaril@192: my $i=0; insilmaril@192: my $is=""; insilmaril@192: insilmaril@192: foreach (@lines) insilmaril@192: { insilmaril@192: if (!/<.*?\/>/) insilmaril@192: { insilmaril@192: if (/<\//) insilmaril@192: { insilmaril@192: # Closing tag insilmaril@192: $i--; insilmaril@192: if ($i<0) {$i=0}; insilmaril@192: $is=indent($i); insilmaril@192: print "$is$_\n"; insilmaril@192: } else insilmaril@192: { insilmaril@192: if (/<(?!\?)/) # ignore insilmaril@192: { insilmaril@192: # Opening tag insilmaril@192: print "$is$_\n"; insilmaril@192: $i++; insilmaril@192: $is=indent($i); insilmaril@192: } else insilmaril@192: { insilmaril@192: # empty lines etc insilmaril@192: print "$is$_\n"; insilmaril@192: } insilmaril@192: } insilmaril@192: } else insilmaril@192: { insilmaril@192: # Ignor single tags <../> insilmaril@192: print "$is$_\n"; insilmaril@192: } insilmaril@192: } insilmaril@192: print "\n"; insilmaril@192: exit; insilmaril@192: insilmaril@192: sub indent() insilmaril@192: { insilmaril@192: my $size=shift; insilmaril@192: my $s=""; insilmaril@192: for ($i=0; $i<$size; $i++) insilmaril@192: { insilmaril@192: $s=$s." "; insilmaril@192: } insilmaril@192: return $s; insilmaril@192: }