Sha256: e1d506b79ed7bd4de1981be846661fbc94230283acdc1c76df53cd702bab2879
Contents?: true
Size: 715 Bytes
Versions: 1
Compression:
Stored size: 715 Bytes
Contents
#!/usr/bin/env ruby require 'pty' require 'readline' STDOUT.sync = true bin = "#{Gem.bin_path('voltos', 'voltos')}-cli" status = PTY.spawn(bin, *ARGV) do |stdout, stdin, pid| stdout.sync = true Thread.new do loop do STDOUT.print stdout.getc end end Thread.new do loop do input = Readline.readline("", true) if input.nil? stdout.flush stdout.close stdin.close end stdin.puts input.strip end end begin Process::waitpid(pid) rescue nil while out = stdout.getc do STDOUT.print out end rescue SystemExit, Interrupt Process.kill('INT', pid) retry rescue EOFError puts "Ctrl-D" end end exit(status.to_i)
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
voltos-0.3.0.rc10 | exe/voltos |