[ale] perl question
David S. Jackson
dsj at dsj.net
Mon May 10 01:16:01 EDT 1999
Hi,
I'm writing this dinky little TODO planner script, and this one function is
returning some goofy looking output, and I don't understand why it is:
the function:
=============
#### Remove completed tasks ############################
sub remove_task {
$num = 0;
system( "clear" );
open DATAFILE, "</home/dsj/.planner/data.txt" or die "\nCan't open $datafile: $!\n";
print "\nNo. Pri.\tDescription\n";
print "=========================================================\n\n";
while (<DATAFILE>) { push @lines, "$_"; }
foreach $line (sort @lines) {
print "$num $line";
$num++;
}
print "\nWhat task number is complete?";
close DATAFILE;
chomp($donetask = <STDIN>);
open OUTFILE, ">/home/dsj/.planner/data.txt" or die "\nCan't open $datafile for writing: $!\n";
splice @lines, $donetask;
for ( $num = 0; $num < @lines; $num++) {
print OUTFILE $line[$num];
}
close OUTFILE; $entry = ""; @lines = "";
}
the "data.txt" file:
====================
A Continue programming
A Pick up check from Schwab
B Update checkbook
C Tidy up office
A Make Linux Planner work
B Website maintenance script
C Check out some science fiction
C This is still a test
Weird looking output:
=====================
No. Pri. Description
=========================================================
0 1 A Continue programming well
2 A Make Linux Planner nicer
3 A Pick up check from Schwab
4 B Update checkbook
5 B Website maintenance script
6 C Check out some science fiction
7 C This is still a test
8 C Tidy up office
What task number is complete?
********************************
Can anyone tell me why this occurs after one time through this function? Is
the splice statement adding an extra at $line[0] ?? Also, it looks like
I'm deleting more than the single array element I intended...
Any and all help is appreciated! :-) Mind you, it's late, and I'm probably
too tired to be writing this, but I'm too sleepy to know the difference...
Zzzzz...
:-)
--
David S. Jackson http://www.dsj.net
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
"In theory, theory and practice are the same thing. In practice,
they are different." -- Bruce Schnier
More information about the Ale
mailing list