Problem z przechwytywaniem klawiszy z konsoli (windows)

Witam, dopiero zaczynam z Ruby i pisząc prostego klienta TCP natknąłem się na problem w przechwytywaniu klawiszy. Mianowicie, chcę po wpisaniu czegokolwiek do konsoli przypisać to do zmiennej, abym później mógł wysłać to polecenie do serwera przez gniazdo. Wymyśliłem tak:

[code]cmd = “”

10.times {
cmd << STDIN.getc
}

print cmd[/code]
jednak takie rozwiązanie wymaga ode mnie podania stałej liczby znaków w poleceniu. Jest jakieś inne wyjście, żeby przechwycić cały ciąg (bardziej interesuje mnie natywny sposób, bez korzystania z gemów) ?

cmd = gets.chomp

gets pobiera ciąg ze standardowego wejścia, String#chomp bez argumentów usuwa wszelkie \n, \r i \r\n z końca stringu.

o widzisz, dzięki bardzo, bo już wymyśliłem coś takiego :smiley:

cmd << chr = STDIN.getc while chr != 10