diff --git a/mewny.rb b/mewny.rb index 1127fc8..3b0c08c 100644 --- a/mewny.rb +++ b/mewny.rb @@ -173,10 +173,13 @@ def do_client end while (char = STDIN.noecho(&:getch)) - exit unless char != "\x03" # ^C exit unless char != "\x04" # ^D - next unless char.ord >= 0x20 # Non printing - next unless char.ord != 0x7F # DEL (Non print) + if char.ord < 0x20 # Non printing + char = '^'+(char.ord + 0x40).chr + elsif char.ord == 0x7F # DEL (Non print) + char = '^?' + end + next unless socket.puts "#{VERSION}|#{char}" end ensure