#!perl -n0
map{$n=0;$r=$_;@w=map{sprintf"%-3s",$_}split;$_="@w";s/ *$/./;substr($_,57)='...'if length>60;$q=@x=/ \S(?!\.\.$)/g;@w&&printf@w.": $_
%*s: "."%-*s"x($q+1)."
",map{(!$n++||!$q--||1+length,(@x=/[aeiouy]/ig).'/'.s/\w//g)}$r,@w}split/\.\s+/
|
A bit like applying an olive press to alphabet soup, don't you think?
#!perl -0
map{($z,@c)=map{sprintf"%-*s",length,(@x=/[aeiouy]/ig).'/'.(@x=/\w/g)}$_,@w=split;$_=sprintf"%-3s "x@w,@w;s/ *$//;substr($_,57)='...'if length>60;$z=~s/ //g;$_=@w.": $_
$z: @c[0..($q=@x=/ \S(?!\.\.$)/g)]
",s/ *$//gm;@w&&print}split/(?<=\.)\s+/,<>;
|
OK, I'm confident I got it right this time. :-) But it's still overweight. :-(
#!perl -0
map{($z,@c)=map{sprintf"%-*s",length,(@x=/[aeiouy]/ig).'/'.(@x=/\w/g)}$_,@w=split;map{$_=sprintf"%-3s",$_}@w[0..@w-2];substr($_,57)='...'if length($_="@w")>60;
$z=~s/ //g;($_=@w.": $_
$z: @c[0..($q=@x=/ \S(?!\.\.$)/g)]
")=~s/ *$//gm;print if@w}split/(?<=\.)\s+/,<>;
|
yeesh, I was just happy to get this to work at all!
#!perl -0777
print map{@c=map{(@_=/[aeiouy]/ig).'/'.(@_=/\w/g)}@w=split,$_;$w[$_].=$"x($d=length($c[$_])-length$w[$_]),$c[$_].=$"x-$d for 0..@w-2;substr($w,57)='...'if length($w="@w")>60;($c="@c[0..($q=@_=$w=~/ \w/g)]")=~s/ *$//;@w?@w.": $w
$c[$#c]: $c
":""}split/(?<=\.)\s+/,<>;
|