It seems there is a bug in the Lisp here.
Here is an old correspondence on the same topic.
From: Barry Margolin (······@bbnplanet.com)
Subject: Re: Use of LISTEN or READ-CHAR-NO-HANG for Testing Keyboard
Input
Newsgroups: comp.lang.lisp
Date: 1998/10/06
..........................
Unless you've used a system-specific function to change to character
mode, neither LISTEN nor READ-CHAR-NO-HANG will detect characters
available
until you hit RETURN, since the tty driver doesn't make them available
to
the application until then.
I received a post saying the same.
............ the terminal driver reads your input, but doesn't pass it
on to Lisp until you either fill the input buffer or press enter...so
READ-CHAR-NO-HANG doesn't see any characters (and thus returns,
without hanging).
Setting "cbreak" mode turns off input editing and causes each
character to be passed along immediately, on Unix; I don't know how to
make Windows do that, though (if that's even what the problem is)
How do I get CLisp under Windows XP to behave the way I want?
Mark Tarver
··········@ukonline.co.uk (Mark Tarver) writes:
> It seems there is a bug in the Lisp here.
>
> Here is an old correspondence on the same topic.
>
> From: Barry Margolin (······@bbnplanet.com)
> Subject: Re: Use of LISTEN or READ-CHAR-NO-HANG for Testing Keyboard
> Input
> Newsgroups: comp.lang.lisp
> Date: 1998/10/06
>
> ..........................
> Unless you've used a system-specific function to change to character
> mode, neither LISTEN nor READ-CHAR-NO-HANG will detect characters
> available
> until you hit RETURN, since the tty driver doesn't make them available
> to
> the application until then.
>
> I received a post saying the same.
>
> ............ the terminal driver reads your input, but doesn't pass it
> on to Lisp until you either fill the input buffer or press enter...so
> READ-CHAR-NO-HANG doesn't see any characters (and thus returns,
> without hanging).
> Setting "cbreak" mode turns off input editing and causes each
> character to be passed along immediately, on Unix; I don't know how to
> make Windows do that, though (if that's even what the problem is)
>
> How do I get CLisp under Windows XP to behave the way I want?
ext:with-keyboard / ext:*keyboard-input* see my other message on the subject.
--
__Pascal Bourguignon__ http://www.informatimago.com/
Voting Democrat or Republican is like choosing a cabin in the Titanic.