[27813] in Perl-Users-Digest
Perl-Users Digest, Issue: 9177 Volume: 10
daemon@ATHENA.MIT.EDU (Perl-Users Digest)
Wed Apr 19 21:05:37 2006
Date: Wed, 19 Apr 2006 18:05:06 -0700 (PDT)
From: Perl-Users Digest <Perl-Users-Request@ruby.OCE.ORST.EDU>
To: Perl-Users@ruby.OCE.ORST.EDU (Perl-Users Digest)
Perl-Users Digest Wed, 19 Apr 2006 Volume: 10 Number: 9177
Today's topics:
show hidden value in variable.. with mysql joe.henderson1@
Re: show hidden value in variable.. with mysql <rvtol+news@isolution.nl>
Re: show hidden value in variable.. with mysql <1usa@llenroc.ude.invalid>
Re: show hidden value in variable.. with mysql joe.henderson1@
Re: show hidden value in variable.. with mysql joe.henderson1@
Re: show hidden value in variable.. with mysql <someone@example.com>
Re: Term::ReadKey on Win? 5.005 vs 5.8.8? <rvtol+news@isolution.nl>
Re: Term::ReadKey on Win? 5.005 vs 5.8.8? <nospam-abuse@ilyaz.org>
Re: Term::ReadKey on Win? 5.005 vs 5.8.8? <nospam-abuse@ilyaz.org>
Re: Term::ReadKey on Win? 5.005 vs 5.8.8? <mothra@nowhereatall.com>
Re: Term::ReadKey on Win? 5.005 vs 5.8.8? <nospam-abuse@ilyaz.org>
Digest Administrivia (Last modified: 6 Apr 01) (Perl-Users-Digest Admin)
----------------------------------------------------------------------
Date: Wed, 19 Apr 2006 22:11:29 GMT
From: joe.henderson1@
Subject: show hidden value in variable.. with mysql
Message-Id: <gfcd429kaaot9ibb06l6ma1od1j5tf1q17@4ax.com>
All,
I run a mysql db 5.0.11. With a table that contains a few columns
defined as type "text" with indexes..
I running this on a Arch Linux 0.7.1.. 2.6.15 custom.. perl 5.8.8
I run some scripts to parse data from cisco/network devices using snmp
and telnet/ssh..
I retrieve the name, mac, serial, location, description, interfaces,
etc..
The problem I have is the names I recieve from the
devices I run threw a "clean subroutine"..
##########
sub clean
{
my $debug = 0;
my $item = $_[0];
$item =~ s/^\s+//; #remove Leading whitespace
$item =~ s/\s+$//; #remove trailing whitespace
$item =~ s/\r/ /g; #remove those Damn ^M
$item =~ s/\f/ /g; #remove those Damn ^M
$item =~ s/\t/ /g; #remove those Damn ^M
$item =~ s/\n/ /g; #remove those Damn ^M
$item =~ s/\s+/ /g; #replace multiple spaces with one
chomp($item); #remove newline character
return $item;
}
##########
And for some reason when I compare to different names
From DB: $name = "00a45fde0032(sw1)"
And the name I pulled from the device $name: "00a45fde0032(sw1)"
and compare them for exact match
##########
if($name eq $mname)
{ print "MATCH ON NAME: \"$name\" MNAME: \"$mname\"\n"; }
else
{ print "NO MATCH\n"; }
##########
Nothing happens.. No Match.
However when I did a
##########
if($name == $mname)
{ print "MATCH ON NAME: \"$name\" MNAME: \"$mname\"\n"; }
else
{ print "NO MATCH\n"; }
##########
I recieved an error stating "cannot equal on non numeric" which is
what I expected.. However it showed a hidden character of
"MNAME: "00a45fde0032(sw1)\o"
What does the "\o" mean? I have never seen this before..
In the variable their has to be hidden characters that I cannot see.
I thought about converting the string to hex then back to see if
any characters show up..
Or "$item =~ s/[^ A-Za-z0-9\-\:\.\(\)\@]//g;"
A note.. I use the "sub clean" for everthing I receive from my
scripts.. And then insert/update/replace into the database..
I don't know if the column type is causing this error or the
devices that are returning the value.. Due to I cannot see the
hidden values...
If their is a better way of "cleaning" the variables please let me
know..
Joe
------------------------------
Date: Thu, 20 Apr 2006 00:50:50 +0200
From: "Dr.Ruud" <rvtol+news@isolution.nl>
Subject: Re: show hidden value in variable.. with mysql
Message-Id: <e26mbb.1jc.1@news.isolution.nl>
joe.henderson1@ schreef:
> $item =~ s/^\s+//; #remove Leading whitespace
> $item =~ s/\s+$//; #remove trailing whitespace
> $item =~ s/\r/ /g; #remove those Damn ^M
> $item =~ s/\f/ /g; #remove those Damn ^M
> $item =~ s/\t/ /g; #remove those Damn ^M
> $item =~ s/\n/ /g; #remove those Damn ^M
> $item =~ s/\s+/ /g; #replace multiple spaces with one
> chomp($item); #remove newline character
After some weeding, this remains:
s/^\s+//, s/\s+$//, s/\s+/ /g for $item;
Test:
perl -e '$i="\t\rabc \n def\t\r\n";
s/^\s+//, s/\s+$//, s/\s+/ /g for $i;
print(length $i, ":$i\n")'
7:abc def
--
Affijn, Ruud
"Gewoon is een tijger."
------------------------------
Date: Thu, 20 Apr 2006 00:11:16 GMT
From: "A. Sinan Unur" <1usa@llenroc.ude.invalid>
Subject: Re: show hidden value in variable.. with mysql
Message-Id: <Xns97AACD5D3539Casu1cornelledu@127.0.0.1>
joe.henderson1@ wrote in news:gfcd429kaaot9ibb06l6ma1od1j5tf1q17@
4ax.com:
> sub clean
> {
> my $debug = 0;
What does this line do?
> my $item = $_[0];
my ($item) = @_;
would enable you to pass literal strings to this routine as well as
variables.
> $item =~ s/^\s+//; #remove Leading whitespace
> $item =~ s/\s+$//; #remove trailing whitespace
> $item =~ s/\r/ /g; #remove those Damn ^M
> $item =~ s/\f/ /g; #remove those Damn ^M
> $item =~ s/\t/ /g; #remove those Damn ^M
> $item =~ s/\n/ /g; #remove those Damn ^M
> $item =~ s/\s+/ /g; #replace multiple spaces with one
> chomp($item); #remove newline character
> return $item;
> }
> ##########
I would rewrite this subroutine as follows (see also Dr. Ruud's
comments):
sub clean_spaces {
my ($string) = @_;
$string =~ s/^\s+//;
$string =~ s/\s+$//;
$string =~ s/\s+/ /g;
return $string;
}
> And for some reason when I compare to different names
>
> From DB: $name = "00a45fde0032(sw1)"
>
> And the name I pulled from the device $name: "00a45fde0032(sw1)"
> and compare them for exact match
>
> ##########
> if($name eq $mname)
> { print "MATCH ON NAME: \"$name\" MNAME: \"$mname\"\n"; }
> else
> { print "NO MATCH\n"; }
> ##########
>
> Nothing happens.. No Match.
It is not possible that nothing happens.
use constant DEBUG => 1;
...
DEBUG and
warn sprintf("\$name = '%s'\n\$mname = '%s'\n", $name, $mname);
to visually compare the strings during debugging.
> However when I did a
> ##########
> if($name == $mname)
> { print "MATCH ON NAME: \"$name\" MNAME: \"$mname\"\n"; }
> else
> { print "NO MATCH\n"; }
> ##########
>
> I recieved an error stating "cannot equal on non numeric" which is
> what I expected.. However it showed a hidden character of
> "MNAME: "00a45fde0032(sw1)\o"
>
> What does the "\o" mean? I have never seen this before..
Off the top of my head, I have no idea.
> I thought about converting the string to hex then back to see if
> any characters show up..
Why not?
I am sure there is some pack/unpack magic that would do this in a single
statement, but since I am not that smart, I would use something like:
sub hex_dump_string {
my ($string) = @_;
$string =~ s/(.)/sprintf '%2.2X', ord $1/ges;
return $string;
}
> If their is a better way of "cleaning" the variables please let me
> know..
For that, it would be useful to see exactly what's in the strings you
are working with.
Sinan
--
A. Sinan Unur <1usa@llenroc.ude.invalid>
(remove .invalid and reverse each component for email address)
comp.lang.perl.misc guidelines on the WWW:
http://augustmail.com/~tadmc/clpmisc/clpmisc_guidelines.html
------------------------------
Date: Thu, 20 Apr 2006 00:46:31 GMT
From: joe.henderson1@
Subject: Re: show hidden value in variable.. with mysql
Message-Id: <38md42hv37s2mdj2eqas7mg4mgld22g6b7@4ax.com>
On Thu, 20 Apr 2006 00:50:50 +0200, "Dr.Ruud"
<rvtol+news@isolution.nl> wrote:
>joe.henderson1@ schreef:
>
>> $item =~ s/^\s+//; #remove Leading whitespace
>> $item =~ s/\s+$//; #remove trailing whitespace
>> $item =~ s/\r/ /g; #remove those Damn ^M
>> $item =~ s/\f/ /g; #remove those Damn ^M
>> $item =~ s/\t/ /g; #remove those Damn ^M
>> $item =~ s/\n/ /g; #remove those Damn ^M
>> $item =~ s/\s+/ /g; #replace multiple spaces with one
>> chomp($item); #remove newline character
>
>After some weeding, this remains:
>
> s/^\s+//, s/\s+$//, s/\s+/ /g for $item;
Where is the regex for removing the line feeds/new/tab/form feeds?
I see others... for leading ws, trailing ws, and 1 or more replace
with single..
>
>Test:
>
> perl -e '$i="\t\rabc \n def\t\r\n";
> s/^\s+//, s/\s+$//, s/\s+/ /g for $i;
> print(length $i, ":$i\n")'
Interesting..
>
>7:abc def
Good stuff..
My previous question is repeated here...??
Thanks
Joe
------------------------------
Date: Thu, 20 Apr 2006 00:54:24 GMT
From: joe.henderson1@
Subject: Re: show hidden value in variable.. with mysql
Message-Id: <afmd42po2t5kijm7psg2a4q9l7eaam2jtf@4ax.com>
On Thu, 20 Apr 2006 00:11:16 GMT, "A. Sinan Unur"
<1usa@llenroc.ude.invalid> wrote:
>joe.henderson1@ wrote in news:gfcd429kaaot9ibb06l6ma1od1j5tf1q17@
>4ax.com:
>
>> sub clean
>> {
>> my $debug = 0;
>
>What does this line do?
All the subs i write have a "magic" debug variable.. I spend more time
on debugging than writting code.. :(
When i turn this on I embed print statments with low level printouts..
ex...
if($debug == 1) { print "Entered sub \"clean\"\n"; }
... magic ...
if($debug == 1) { print "leaving sub returning: \"$ret\"\n"; }
>
>> my $item = $_[0];
>
>my ($item) = @_;
>
>would enable you to pass literal strings to this routine as well as
>variables.
K. thanks.. Used a "$tem = shift;" but quit after some problem I don't
remember.. :(
However How would you pass multiple Items..
ex..
########
like ($item) = clean($val1, $val2);
sub clean
{
my $item1 = shift(@_);
my $item2 = shift(@_);
... magic ...
}
########
??
>
>> $item =~ s/^\s+//; #remove Leading whitespace
>> $item =~ s/\s+$//; #remove trailing whitespace
>> $item =~ s/\r/ /g; #remove those Damn ^M
>> $item =~ s/\f/ /g; #remove those Damn ^M
>> $item =~ s/\t/ /g; #remove those Damn ^M
>> $item =~ s/\n/ /g; #remove those Damn ^M
>> $item =~ s/\s+/ /g; #replace multiple spaces with one
>> chomp($item); #remove newline character
>> return $item;
>> }
>> ##########
>
>I would rewrite this subroutine as follows (see also Dr. Ruud's
>comments):
>
>sub clean_spaces {
> my ($string) = @_;
> $string =~ s/^\s+//;
> $string =~ s/\s+$//;
> $string =~ s/\s+/ /g;
> return $string;
>}
>
>> And for some reason when I compare to different names
>>
>> From DB: $name = "00a45fde0032(sw1)"
>>
>> And the name I pulled from the device $name: "00a45fde0032(sw1)"
>> and compare them for exact match
>>
>> ##########
>> if($name eq $mname)
>> { print "MATCH ON NAME: \"$name\" MNAME: \"$mname\"\n"; }
>> else
>> { print "NO MATCH\n"; }
>> ##########
>>
>> Nothing happens.. No Match.
>
>It is not possible that nothing happens.
I get output of "NO MATCH".. not the output of undef...
>
>use constant DEBUG => 1;
>
I do not have experience with the debug command... Will use.. thanks
for the advise...
>...
>
>DEBUG and
> warn sprintf("\$name = '%s'\n\$mname = '%s'\n", $name, $mname);
good idea
>
>to visually compare the strings during debugging.
>
>> However when I did a
>> ##########
>> if($name == $mname)
>> { print "MATCH ON NAME: \"$name\" MNAME: \"$mname\"\n"; }
>> else
>> { print "NO MATCH\n"; }
>> ##########
>>
>> I recieved an error stating "cannot equal on non numeric" which is
>> what I expected.. However it showed a hidden character of
>> "MNAME: "00a45fde0032(sw1)\o"
>>
>> What does the "\o" mean? I have never seen this before..
>
>Off the top of my head, I have no idea.
>
>> I thought about converting the string to hex then back to see if
>> any characters show up..
>
>Why not?
>
>I am sure there is some pack/unpack magic that would do this in a single
>statement, but since I am not that smart, I would use something like:
>
>sub hex_dump_string {
> my ($string) = @_;
> $string =~ s/(.)/sprintf '%2.2X', ord $1/ges;
> return $string;
>}
Good stuff.. I'll read up on the "ord" "/ges"..
don't know what that is... more advance regex..
>
>> If their is a better way of "cleaning" the variables please let me
>> know..
>
>For that, it would be useful to see exactly what's in the strings you
>are working with.
>
>Sinan
Thanks...
Joe
------------------------------
Date: Thu, 20 Apr 2006 01:02:40 GMT
From: "John W. Krahn" <someone@example.com>
Subject: Re: show hidden value in variable.. with mysql
Message-Id: <Q4B1g.38$8E1.31@clgrps13>
joe.henderson1@ wrote:
>
> I run a mysql db 5.0.11. With a table that contains a few columns
> defined as type "text" with indexes..
>
> I running this on a Arch Linux 0.7.1.. 2.6.15 custom.. perl 5.8.8
>
> I run some scripts to parse data from cisco/network devices using snmp
> and telnet/ssh..
>
> I retrieve the name, mac, serial, location, description, interfaces,
> etc..
>
> The problem I have is the names I recieve from the
> devices I run threw a "clean subroutine"..
>
> ##########
> sub clean
> {
> my $debug = 0;
> my $item = $_[0];
> $item =~ s/^\s+//; #remove Leading whitespace
> $item =~ s/\s+$//; #remove trailing whitespace
> $item =~ s/\r/ /g; #remove those Damn ^M
> $item =~ s/\f/ /g; #remove those Damn ^M
> $item =~ s/\t/ /g; #remove those Damn ^M
> $item =~ s/\n/ /g; #remove those Damn ^M
> $item =~ s/\s+/ /g; #replace multiple spaces with one
> chomp($item); #remove newline character
> return $item;
> }
> ##########
sub clean
{
my $debug = 0;
#remove those Damn ^M etc. and replace multiple spaces with one
( my $item = $_[0] ) =~ tr/ \r\f\t\n/ /s;
#remove leading and trailing spaces
s/^ +//, s/ +$// for $item;
return $item;
}
> And for some reason when I compare to different names
>
> From DB: $name = "00a45fde0032(sw1)"
>
> And the name I pulled from the device $name: "00a45fde0032(sw1)"
> and compare them for exact match
>
> ##########
> if($name eq $mname)
> { print "MATCH ON NAME: \"$name\" MNAME: \"$mname\"\n"; }
> else
> { print "NO MATCH\n"; }
> ##########
>
> Nothing happens.. No Match.
>
>
> However when I did a
> ##########
> if($name == $mname)
> { print "MATCH ON NAME: \"$name\" MNAME: \"$mname\"\n"; }
> else
> { print "NO MATCH\n"; }
> ##########
>
> I recieved an error stating "cannot equal on non numeric" which is
> what I expected.. However it showed a hidden character of
> "MNAME: "00a45fde0032(sw1)\o"
>
> What does the "\o" mean? I have never seen this before..
Are you sure that that is "\o" and not "\0"? It could be a NULL terminated "C
string".
John
--
use Perl;
program
fulfillment
------------------------------
Date: Thu, 20 Apr 2006 00:37:27 +0200
From: "Dr.Ruud" <rvtol+news@isolution.nl>
Subject: Re: Term::ReadKey on Win? 5.005 vs 5.8.8?
Message-Id: <e26l4v.1co.1@news.isolution.nl>
Ilya Zakharevich schreef:
> rvtol+news@isolution.nl:
>> [attribution repaired] Ilya:
>>> perl -MTerm::ReadKey
>>> -wle "open $in, '+< CONIN$' or die;
>>> ReadMode 4, $in;
>>> $|=1;
>>> print ord while defined($_=getc)"
>
>> I had to change that to
>
>> perl -MTerm::ReadKey
>> -wle 'open ($in, "+< /dev/tty") or die $!;
>
> Well, I'm not interested in /dev/tty, only in CONIN$.
I totally missed the "Win" in the Subject. I assume now that CONIN$ is
Windows-specific.
>> ReadMode 4, $in;
>> $|=1; print ord while defined($_=getc) and 3!=ord;
>
> My understanding is that Control-Break should stop the application on
> Win.
I used a cygwin-ssh connection to a FreeBSD system. A Control-Break
stopped the ssh-connection too, so I had to log on again.
>> ReadMode 0, $in'
>
> Actually, I do not know; does Term::ReadKey changes the state of TTY
> for the parent process on Win*?
I think it gets restored. Not so on the freebsd-perl.
>> to make it do anything, and to be able to orderly stop it.
>> (perl, v5.8.6 built for i386-freebsd-64int)
Now my results for "perl, v5.8.8 built for MSWin32-x86-multi-thread":
Both with or without binmode:
The first Ctrl-M shows nothing, the second Ctrl-M neither, the third
Ctrl-M neither, the fourth Ctrl-M shows a single "13", a Ctrl-A recovers
2 of the missing "13"s and also prints a "1".
BTW, "cmd" knows "/dev/con", test:
C:\> echo abc > /dev/con
but Term::ReadKey doesn't seem to support that.
--
Affijn, Ruud
"Gewoon is een tijger."
------------------------------
Date: Wed, 19 Apr 2006 22:45:39 +0000 (UTC)
From: Ilya Zakharevich <nospam-abuse@ilyaz.org>
Subject: Re: Term::ReadKey on Win? 5.005 vs 5.8.8?
Message-Id: <e26eij$un5$1@agate.berkeley.edu>
[A complimentary Cc of this posting was sent to
Mothra
<mothra@nowhereatall.com>], who wrote in article <4446ae82$1@usenet.ugs.com>:
> I had to press enter once in order for it to work:
> D:\perl_modules\TermReadKey-2.30>perl -MTerm::ReadKey -wle "open $in, '+< CON
> ' or die; $in or die; ReadMode 4, $in; $|=1; print ord while defined($_=getc
> 13
> 13
> 13
> 255
This is very strange (and contrary to what other reports say about how
Term::ReadKey behaves)... Without binmode() the first Enter should
not do anything. Are you sure that you did not need multiple presses
with this invocation?
> D:\perl_modules\TermReadKey-2.30>perl -MTerm::ReadKey -wle "open $in, '+< CON
> ' or die; binmode $in or die; ReadMode 4, $in; $|=1; print ord while defined
> =getc)"
> 13
> 13
> 13
> 255
Thanks. This shows that Win* sends \r instead of \n (which any other
OS I know sends). Could you also check which keys are generated by
Control-Enter, Control-M and Control-J?
A lot of thanks,
Ilya
------------------------------
Date: Wed, 19 Apr 2006 22:54:42 +0000 (UTC)
From: Ilya Zakharevich <nospam-abuse@ilyaz.org>
Subject: Re: Term::ReadKey on Win? 5.005 vs 5.8.8?
Message-Id: <e26f3i$ut6$1@agate.berkeley.edu>
[A complimentary Cc of this posting was NOT [per weedlist] sent to
Dr.Ruud
<rvtol+news@isolution.nl>], who wrote in article <e26l4v.1co.1@news.isolution.nl>:
> I totally missed the "Win" in the Subject. I assume now that CONIN$ is
> Windows-specific.
Yes, see below.
> > Actually, I do not know; does Term::ReadKey changes the state of TTY
> > for the parent process on Win*?
> I think it gets restored.
I would like to hear about it more. As reported to me, cygwin's
stty.exe DOES change the state of TTY for the parent process - even if
the parent process is not cygwin!
> Not so on the freebsd-perl.
Yes, *nix has a (broken?) semantic that TTY state is a property of a
physical TTY, not of a process' filehandle.
> Now my results for "perl, v5.8.8 built for MSWin32-x86-multi-thread":
>
> Both with or without binmode:
> The first Ctrl-M shows nothing, the second Ctrl-M neither, the third
> Ctrl-M neither, the fourth Ctrl-M shows a single "13", a Ctrl-A recovers
> 2 of the missing "13"s and also prints a "1".
Wow! Even without binmode... Again, this contradicts other reports I
saw from users of Term::ReadLine...
> BTW, "cmd" knows "/dev/con", test:
>
> C:\> echo abc > /dev/con
>
> but Term::ReadKey doesn't seem to support that.
Known bug in Win* device driver. Googling for
conin readkey readmode con
brings the relevant discussion in the first hit. Now
Term::ReadLine::Perl has a workaround for this bug - but it triggers
this "4 Enters" syndrom.
Sigh,
Ilya
------------------------------
Date: Wed, 19 Apr 2006 16:26:41 -0700
From: "Mothra" <mothra@nowhereatall.com>
Subject: Re: Term::ReadKey on Win? 5.005 vs 5.8.8?
Message-Id: <4446ceeb$1@usenet.ugs.com>
Ilya Zakharevich wrote:
> [A complimentary Cc of this posting was sent to
> Mothra
> <mothra@nowhereatall.com>], who wrote in article
> <4446ae82$1@usenet.ugs.com>:
>
>> I had to press enter once in order for it to work:
>
>> D:\perl_modules\TermReadKey-2.30>perl -MTerm::ReadKey -wle "open
>> $in, '+< CON ' or die; $in or die; ReadMode 4, $in; $|=1; print ord
>> while defined($_=getc 13
>> 13
>> 13
>> 255
>
> This is very strange (and contrary to what other reports say about how
> Term::ReadKey behaves)... Without binmode() the first Enter should
> not do anything. Are you sure that you did not need multiple presses
> with this invocation?
The first enter did nothing (in both examples) I guess I should have been
more clear on that.
>
>> D:\perl_modules\TermReadKey-2.30>perl -MTerm::ReadKey -wle "open
>> $in, '+< CON ' or die; binmode $in or die; ReadMode 4, $in; $|=1;
>> print ord while defined =getc)"
>> 13
>> 13
>> 13
>> 255
>
> Thanks. This shows that Win* sends \r instead of \n (which any other
> OS I know sends). Could you also check which keys are generated by
> Control-Enter, Control-M and Control-J?
>
With or without binmode the results are the same. Pressing
Control-Enter produced no output, Control-M produced
13 and Control-J produced no output.
Hope this helps
Mothra
------------------------------
Date: Thu, 20 Apr 2006 00:20:59 +0000 (UTC)
From: Ilya Zakharevich <nospam-abuse@ilyaz.org>
Subject: Re: Term::ReadKey on Win? 5.005 vs 5.8.8?
Message-Id: <e26k5b$10hs$1@agate.berkeley.edu>
[A complimentary Cc of this posting was sent to
Mothra
<mothra@nowhereatall.com>], who wrote in article <4446ceeb$1@usenet.ugs.com>:
> >> I had to press enter once in order for it to work:
> >> D:\perl_modules\TermReadKey-2.30>perl -MTerm::ReadKey -wle "open
> >> $in, '+< CON ' or die; $in or die; ReadMode 4, $in; $|=1; print ord
> >> while defined($_=getc 13
> >> 13
> >> 13
> >> 255
> > This is very strange (and contrary to what other reports say about how
> > Term::ReadKey behaves)... Without binmode() the first Enter should
> > not do anything. Are you sure that you did not need multiple presses
> > with this invocation?
> The first enter did nothing (in both examples) I guess I should have been
> more clear on that.
Thanks. So could you please be "more clear on that"? ;-)
What happens on what keypress (separately for binmode vs no-binmode)?
> > Thanks. This shows that Win* sends \r instead of \n (which any other
> > OS I know sends). Could you also check which keys are generated by
> > Control-Enter, Control-M and Control-J?
> With or without binmode the results are the same. Pressing
> Control-Enter produced no output, Control-M produced
> 13 and Control-J produced no output.
Thanks; and what happens if you press some other keys AFTER these? Is
any output "delayed" until other keypresses?
A lot of thanks for your patience,
Ilya
------------------------------
Date: 6 Apr 2001 21:33:47 GMT (Last modified)
From: Perl-Users-Request@ruby.oce.orst.edu (Perl-Users-Digest Admin)
Subject: Digest Administrivia (Last modified: 6 Apr 01)
Message-Id: <null>
Administrivia:
#The Perl-Users Digest is a retransmission of the USENET newsgroup
#comp.lang.perl.misc. For subscription or unsubscription requests, send
#the single line:
#
# subscribe perl-users
#or:
# unsubscribe perl-users
#
#to almanac@ruby.oce.orst.edu.
NOTE: due to the current flood of worm email banging on ruby, the smtp
server on ruby has been shut off until further notice.
To submit articles to comp.lang.perl.announce, send your article to
clpa@perl.com.
#To request back copies (available for a week or so), send your request
#to almanac@ruby.oce.orst.edu with the command "send perl-users x.y",
#where x is the volume number and y is the issue number.
#For other requests pertaining to the digest, send mail to
#perl-users-request@ruby.oce.orst.edu. Do not waste your time or mine
#sending perl questions to the -request address, I don't have time to
#answer them even if I did know the answer.
------------------------------
End of Perl-Users Digest V10 Issue 9177
***************************************