Подтвердить что ты не робот

Как подавить вывод возвращаемого значения в консоли IRB/Rails?

Примером является, если я перейду в IRB и сделаю следующее:

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

Есть ли способ подавить nil? Проблема в том, что если я помещаю в большую структуру данных, она спамает что-то другое нерелевантное ответное сообщение. Меня больше интересует вывод от операторов отладки, которые я запускаю через блок, и вам приходится постоянно прокручивать вверх и искать реальные данные.

4b9b3361

Ответ 1

Если вы хотите время от времени подавлять длительный вывод, используйте ;0, например:

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

Если вы хотите его вообще подавить, используйте файл ~/.irbrc. IRB.conf [: INSPECT_MODE] и IRB.conf [: PROMPT] [your_prompt] [: RETURN] управляют возвратом. Вы можете выяснить, что такое your_prompt, проверив IRB.conf [: PROMPT_MODE]

Пример:

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

Вам нужно перезапустить irb после изменения значения.

Надеюсь, что это поможет.

Ответ 2

Вы также можете подавить вывод следующей командой: irb --simple-prompt --noecho.

Найдите ниже:

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

Надеюсь, с тобой все будет в порядке.

Я использую рубиновую версию, как показано ниже:

@ubuntu:~$ ruby -v
ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-linux]

Ответ 3

От мертвой ссылки @Tallboy

Чтобы подавить возвращаемое значение в консоли Rails, введите conf.return_format = ""

По умолчанию (печать возвращаемого значения)
conf.return_format = "=> %s\n"