Suppress result output in irb?

Hi,

Is there a way to prevent irb from printing the result of a
expression to the terminal on a command-by-command basis? I’m trying
to use irb and soap4r to play around with a SOAP server and in many
cases the results are fairly long arrays; I’d like to be able to
prevent these from being displayed automatically. IPython, for
example, will suppress the output from a command if it’s terminated
with a semicolon (’;’). I was hoping for something similar in irb.

Thanks,

Tom

Tom P. wrote:

Is there a way to prevent irb from printing the result of a
expression to the terminal on a command-by-command basis? I’m trying
to use irb and soap4r to play around with a SOAP server and in many
cases the results are fairly long arrays; I’d like to be able to
prevent these from being displayed automatically. IPython, for
example, will suppress the output from a command if it’s terminated
with a semicolon (’;’). I was hoping for something similar in irb.

For me, with irb 0.9.5(05/04/13) and ruby 1.8.5 (2006-08-25)
[i386-cygwin], a trailing semicolon does suppress printing the result.

Tom P. asked:

Is there a way to prevent irb from printing the result of a
expression to the terminal on a command-by-command basis? I’m trying
to use irb and soap4r to play around with a SOAP server and in many
cases the results are fairly long arrays; I’d like to be able to
prevent these from being displayed automatically. IPython, for
example, will suppress the output from a command if it’s terminated
with a semicolon (’;’). I was hoping for something similar in irb.

rickhg12hs responded:

For me, with irb 0.9.5(05/04/13) and ruby 1.8.5 (2006-08-25)
[i386-cygwin], a trailing semicolon does suppress printing the
result.

Thanks for the quick response.

When I try that (with the same version of irb, but ruby 1.8.4), irb
gives me the “waiting for you to finish the command” prompt.

7+8
=> 15

7+8;
?>

Are you sure that’s not what you’re getting, too?

Tom

Tom P. wrote:

Hi,

Is there a way to prevent irb from printing the result of a expression
to the terminal on a command-by-command basis? I’m trying to use irb
and soap4r to play around with a SOAP server and in many cases the
results are fairly long arrays; I’d like to be able to prevent these
from being displayed automatically. IPython, for example, will suppress
the output from a command if it’s terminated with a semicolon (’;’). I
was hoping for something similar in irb.

irb(main):002:0> “q”*1000; 0
=> 0

On Oct 5, 2006, at 2:44 AM, Joel VanderWerf wrote:

irb(main):002:0> “q”*1000; 0
=> 0

Thanks. (I feel silly for not having thought of that last night.)
It’s much better than nothing.

But, is there a good reason why irb itself couldn’t suppress the
display of the results when you gave it a command with a trailing
semicolon? I don’t see how that would break anything.

Tom