head	1.1;
access;
symbols;
locks
	root:1.1; strict;
comment	@# @;


1.1
date	2024.09.04.10.58.20;	author root;	state Exp;
branches;
next	;


desc
@original. provides proper spacing in html files w/focus on tables.
-bert
@


1.1
log
@Initial revision
@
text
@#!/usr/bin/perl

$file = shift;

open (FILE,$file);
while (<FILE>) {
  chomp;
  next if ($_ eq "");
  $_ =~ s/^(\s+)//;
  push (@@new,$_);
}
close FILE;

foreach $line(@@new) {
  if ($line =~ /(\<table.*\>)/) {
    print "$line\n";
    $table = 1;
  } elsif ($line =~ /(\<\/table.*\>)/) {
    print "$line\n";
    undef $table;
  } elsif ($line =~ /(\<tr.*\>)/) {
    print "  $line\n";
    $tr = 1;
  } elsif ($line =~ /(\<\/tr.*\>)/) {
    print "  $line\n";
    undef $tr;
  } elsif ($line =~ /(\<(th|td).*\>)/) {
    print "    $line\n";
    $td = 1;
  } elsif ($line =~ /(\<\/(th|td).*\>)/) {
    print "    $line\n";
    undef $td;
  } elsif ($line =~ /(\<(ul).*\>)/) {
    print "      $line\n";
    $ul = 1;
  } elsif ($line =~ /(\<\/(ul).*\>)/) {
    print "      $line\n";
    undef $ul;
  } else {
    if ($table) {
      if (($tr)&&($td)&&($ul)) {
        print "        $line\n";
        #print "        $line (table=$table,TR=$tr,td=$td)\n";
      } elsif (($tr)&&($td)) {
        print "      $line\n";
        #print "      $line (table=$table,TR=$tr,td=$td)\n";
      } elsif ($tr) {
        print "  $line\n";
        #print "  $line (table=$table,TR=$tr,td=$td)\n";
      } elsif ($td) {
        print "    $line\n";
        #print "    $line (table=$table,tr=$tr,TD=$td)\n";
      } else {
        print "  $line\n";
        #print "  $line (table=$table,tr=$tr,td=$td)\n";
      }
    } else {
      print "$line\n";
    }
  }
}
@
