How to suppress the output of return value in IRB/Rails Console?

后端 未结 4 1820
别那么骄傲
别那么骄傲 2020-12-23 20:29

An example is if I go into IRB and do the following:

jruby-1.6.7 :026 > puts [1,2,3,4,5]
1
2
3
4
5
=> nil 

Is there anyway to suppres

相关标签:
4条回答
  • 2020-12-23 21:02

    From @Tallboy dead link

    To suppress the return value in Rails console, enter
    conf.return_format = ""

    Default (Print the return value)
    conf.return_format = "=> %s\n"

    0 讨论(0)
  • 2020-12-23 21:13

    You can also supress the output with the following command as irb --simple-prompt --noecho.

    Find the below:

    @ubuntu:~$ irb --simple-prompt
    >> puts "hi"
    hi
    => nil
    >> p "hi"
    "hi"
    => "hi"
    >> exit
    @ubuntu:~$ irb --simple-prompt --noecho
    >> puts "hi"
    hi
    >> p "hi"
    "hi"
    >> 
    

    Hope you will be fine with it.

    I am using ruby version as below :

    @ubuntu:~$ ruby -v
    ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-linux]
    
    0 讨论(0)
  • 2020-12-23 21:21

    If you just want to suppress long output once in a while, use ;0, like:

    a = [*1..10000];0
    # => 0
    

    If you want to suppress it generally, use the ~/.irbrc file. The IRB.conf[:INSPECT_MODE] and IRB.conf[:PROMPT][your_prompt][:RETURN] control what is returned. You can figure out what your_prompt is by checking IRB.conf[:PROMPT_MODE]

    Example:

    IRB.conf[:PROMPT][:DEFAULT][:RETURN] = "" # suppress return value completely
    

    You'll need to restart irb after changing the value.

    Hope that helps.

    0 讨论(0)
  • 2020-12-23 21:24

    i run the following in irb:

    irb_context.echo = false
    

    e.g.

    $ irb
    > "foo"
    => "foo"
    > irb_context.echo = false
    > "foo"
    >
    
    0 讨论(0)
提交回复
热议问题