#!/usr/bin/perl # tab_compress.pl - Don Yang (uguu.org) # # Convert consecutive spaces to tabs, assuming tab stops at 8 spaces. # # 09/09/12 use strict; while( my $line = <> ) { $line =~ s/\s*$//s; # Convert line to tab groups my @pieces = (); while( $line =~ s/^(.{8})(.*)$/$2/ ) { push @pieces, $1; } if( $line ne "" ) { push @pieces, $line; } # Output pieces foreach my $p (@pieces) { $p =~ s/\s+$/\t/; print $p; } # End of current line print "\n"; }