⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 wrap.t

📁 source of perl for linux application,
💻 T
字号:
#!/usr/bin/perl5.00502@tests = (split(/\nEND\n/s, <<DONE));TEST1This isatestEND   This  is a testENDTEST2This is a test of a very long line.  It should be broken up and put onto multiple lines.This is a test of a very long line.  It should be broken up and put onto multiple lines.This is a test of a very long line.  It should be broken up and put onto multiple lines.END   This is a test of a very long line.	It should be broken up and put onto multiple lines. This is a test of a very long line.  It should be broken up and put onto multiple lines.  This is a test of a very long line.  It should be broken up and put onto multiple lines.ENDTEST3This is a test of a very long line.  It should be broken up and put onto multiple lines.END   This is a test of a very long line.	It should be broken up and put onto multiple lines.ENDTEST4This is a test of a very long line.  It should be broken up and put onto multiple lines.END   This is a test of a very long line.	It should be broken up and put onto multiple lines.ENDTEST5This is a test of a very long line. It should be broken up and put onto multiple This is a test of a very long line. It should be broken up and putEND   This is a test of a very long line. It should be broken up and put onto multiple This is a test of a very long line. It should be broken up and putENDTEST611111111 22222222 33333333 44444444 55555555 66666666 77777777 888888888 999999999 aaaaaaaaa bbbbbbbbb ccccccccc ddddddddd eeeeeeeee ffffffff gggggggg hhhhhhhh iiiiiiii jjjjjjjj kkkkkkkk llllllll mmmmmmmmm nnnnnnnnn ooooooooo ppppppppp qqqqqqqqq rrrrrrrrr sssssssssEND   11111111 22222222 33333333 44444444 55555555 66666666 77777777 888888888 999999999 aaaaaaaaa bbbbbbbbb ccccccccc ddddddddd eeeeeeeee ffffffff gggggggg hhhhhhhh iiiiiiii jjjjjjjj kkkkkkkk llllllll mmmmmmmmm nnnnnnnnn ooooooooo ppppppppp qqqqqqqqq rrrrrrrrr sssssssssENDTEST7c3t1d0s6 c4t1d0s6 c5t1d0s6 c6t1d0s6 c7t1d0s6 c8t1d0s6 c9t1d0s6 c10t1d0s6 c11t1d0s6 c12t1d0s6 c13t1d0s6 c14t1d0s6 c15t1d0s6 c16t1d0s6 c3t1d0s0 c4t1d0s0 c5t1d0s0 c6t1d0s0 c7t1d0s0 c8t1d0s0 c9t1d0s0 c10t1d0s0 c11t1d0s0 c12t1d0s0 c13t1d0s0 c14t1d0s0 c15t1d0s0 c16t1d0s0END   c3t1d0s6 c4t1d0s6 c5t1d0s6 c6t1d0s6 c7t1d0s6 c8t1d0s6 c9t1d0s6 c10t1d0s6 c11t1d0s6 c12t1d0s6 c13t1d0s6 c14t1d0s6 c15t1d0s6 c16t1d0s6 c3t1d0s0 c4t1d0s0 c5t1d0s0 c6t1d0s0 c7t1d0s0 c8t1d0s0 c9t1d0s0 c10t1d0s0 c11t1d0s0 c12t1d0s0 c13t1d0s0 c14t1d0s0 c15t1d0s0 c16t1d0s0ENDTEST8A test of a very very long word.a123456789b123456789c123456789d123456789e123456789f123456789g123456789g1234567END   A test of a very very long word. a123456789b123456789c123456789d123456789e123456789f123456789g123456789g123 4567ENDTEST9A test of a very very long word.  a123456789b123456789c123456789d123456789e123456789f123456789g123456789g1234567END   A test of a very very long word.  a123456789b123456789c123456789d123456789e123456789f123456789g123456789g123 4567ENDTEST10my mother once said"never eat paste my darling"would that I heededEND   my mother once said "never eat paste my darling" would that I heededENDTEST11This_is_a_word_that_is_too_long_to_wrap_we_want_to_make_sure_that_the_program_does_not_crash_and_burnEND   This_is_a_word_that_is_too_long_to_wrap_we_want_to_make_sure_that_the_pr ogram_does_not_crash_and_burnENDTEST12ThisHasBlankLinesEND   This  Has  Blank  LinesENDDONE$| = 1;print "1..", 2 +@tests, "\n";use Text::Wrap;$rerun = $ENV{'PERL_DL_NONLAZY'} ? 0 : 1;$tn = 1;@st = @tests;while (@st) {	my $in = shift(@st);	my $out = shift(@st);	$in =~ s/^TEST(\d+)?\n//;	my $back = wrap('   ', ' ', $in);	if ($back eq $out) {		print "ok $tn\n";	} elsif ($rerun) {		my $oi = $in;		foreach ($in, $back, $out) {			s/\t/^I\t/gs;			s/\n/\$\n/gs;		}		print "------------ input ------------\n";		print $in;		print "\n------------ output -----------\n";		print $back;		print "\n------------ expected ---------\n";		print $out;		print "\n-------------------------------\n";		$Text::Wrap::debug = 1;		wrap('   ', ' ', $oi);		exit(1);	} else {		print "not ok $tn\n";	}	$tn++;}@st = @tests;while(@st) {	my $in = shift(@st);	my $out = shift(@st);	$in =~ s/^TEST(\d+)?\n//;	my @in = split("\n", $in, -1);	@in = ((map { "$_\n" } @in[0..$#in-1]), $in[-1]);		my $back = wrap('   ', ' ', @in);	if ($back eq $out) {		print "ok $tn\n";	} elsif ($rerun) {		my $oi = $in;		foreach ($in, $back, $out) {			s/\t/^I\t/gs;			s/\n/\$\n/gs;		}		print "------------ input2 ------------\n";		print $in;		print "\n------------ output2 -----------\n";		print $back;		print "\n------------ expected2 ---------\n";		print $out;		print "\n-------------------------------\n";		$Text::Wrap::debug = 1;		wrap('   ', ' ', $oi);		exit(1);	} else {		print "not ok $tn\n";	}	$tn++;}$Text::Wrap::huge = 'overflow';my $tw = 'This_is_a_word_that_is_too_long_to_wrap_we_want_to_make_sure_that_the_program_does_not_crash_and_burn';my $w = wrap('zzz','yyy',$tw);print (($w eq "zzz$tw") ? "ok $tn\n" : "not ok $tn");$tn++;{    local $Text::Wrap::columns = 10;    local $Text::Wrap::huge = "wrap";    print ((wrap("verylongindent", "", "foo") eq "verylongindent\nfoo") ? "ok $tn\n" : "not ok $tn");    $tn++;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -