Forum: Ruby Get key pressed

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Alejandro M. (Guest)
on 2009-02-27 21:03
Hi
i need to now how to get a key pressed.

I have a tcpserver, and i want to get if the user press control + x.
If the users press control + x i make the shutdown.

Can you give my some ligth?
Tom C. (Guest)
on 2009-02-28 06:41
(Received via mailing list)
Alejandro Michelin salomon wrote:
> Hi
> i need to now how to get a key pressed.
>
> I have a tcpserver, and i want to get if the user press control + x.
> If the users press control + x i make the shutdown.
>
> Can you give my some ligth?
>
I have an interest in this myself, and hope soon to be acting on it.
Meanwhile, MY prime resource is this:

On page 776 of the <Ruby Cookbook> (see "Resources" below) takes up
"Getting Input One Character at a Time". It discusses the Curses
extension that is a part of Ruby, and the Highline library (a gem). It's
only a couple of pages, but its the most focused discussion I've seen
yet. I assume that I'll learn more from the RDoc material associated
with the Highline gem, and probably in various blogs out there
somewhere, etc.

All I know... hope it helps.

t.

Resources:

* O'Reilly publisher sales page:
http://oreilly.com/catalog/9780596523695/ - Prices here seem high. I
know I didn't pay $40 for my PDF version. Amazon may have used copies
for cheaper.

--

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Tom C., MS MA, LMHC - Private practice Psychotherapist
Bellingham, Washington, U.S.A: (360) 920-1226
<< removed_email_address@domain.invalid >> (email)
<< TomCloyd.com >> (website)
<< sleightmind.wordpress.com >> (mental health weblog)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
James G. (Guest)
on 2009-02-28 16:39
(Received via mailing list)
On Feb 27, 2009, at 10:40 PM, Tom C. wrote:

> On page 776 of the <Ruby Cookbook> (see "Resources" below) takes up
> "Getting Input One Character at a Time". It discusses the Curses
> extension that is a part of Ruby, and the Highline library (a gem).
> It's only a couple of pages, but its the most focused discussion
> I've seen yet. I assume that I'll learn more from the RDoc material
> associated with the Highline gem, and probably in various blogs out
> there somewhere, etc.

Here's a blog post you might enjoy, though it won't help with the
TCPServer case being discussed in this thread:

http://blog.grayproductions.net/articles/i_just_wa...

James Edward G. II
Tom C. (Guest)
on 2009-02-28 21:22
(Received via mailing list)
James G. wrote:
> Here's a blog post you might enjoy, though it won't help with the
> TCPServer case being discussed in this thread:
>
> http://blog.grayproductions.net/articles/i_just_wa...
>
> James Edward G. II
>
>
James, THANKS! That pretty much nails it. A fine contribution to the
community. (Nice clean minimalist blog layout too...)  ~t.

--

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Tom C., MS MA, LMHC - Private practice Psychotherapist
Bellingham, Washington, U.S.A: (360) 920-1226
<< removed_email_address@domain.invalid >> (email)
<< TomCloyd.com >> (website)
<< sleightmind.wordpress.com >> (mental health weblog)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Tim G. (Guest)
on 2009-02-28 21:44
(Received via mailing list)
Alejandro Michelin salomon wrote:

> Hi
> i need to now how to get a key pressed.
>
> I have a tcpserver, and i want to get if the user press control + x.
> If the users press control + x i make the shutdown.
>
> Can you give my some ligth?

To be clear, is this a tcpserver running on the local system where you
want to catch the signal (CTRL-X) or do you mean the tcpserver is
running on a remote system and you want to capture the local singal and
send that to the remote service?
Martin DeMello (Guest)
on 2009-02-28 22:28
(Received via mailing list)
On Sat, Feb 28, 2009 at 8:07 PM, James G. <removed_email_address@domain.invalid>
wrote:
>
> Here's a blog post you might enjoy, though it won't help with the TCPServer
> case being discussed in this thread:
>
> http://blog.grayproductions.net/articles/i_just_wa...

Highline is an excellent example of a ruby library that takes a
single, hard problem and solves it really, really well.

martin
Alejandro M. (Guest)
on 2009-02-28 22:33
Tim G. wrote:
> Alejandro Michelin salomon wrote:
>
>> Hi
>> i need to now how to get a key pressed.
>>
>> I have a tcpserver, and i want to get if the user press control + x.
>> If the users press control + x i make the shutdown.
>>
>> Can you give my some ligth?
>
> To be clear, is this a tcpserver running on the local system where you
> want to catch the signal (CTRL-X) or do you mean the tcpserver is
> running on a remote system and you want to capture the local singal and
> send that to the remote service?

Tim i need to catch the signal ctrl-x on local machine, to shutdown the
server.

The problem is this code :

client = server.accept
The signal ctrl-x does nothing.
Tim G. (Guest)
on 2009-02-28 22:50
(Received via mailing list)
Alejandro Michelin salomon wrote:

>>
> client = server.accept
> The signal ctrl-x does nothing.
>

Sorry if I wasn't clear, is the server local to the same machine where
you have the keyboard connected that will send the command?  Will this
perhaps be on a remote (or local) server in shell/cli? That is, what
interface will you need to use to pass this signal to? (I hope that
makes sense).
This topic is locked and can not be replied to.