Как включить автоматическое завершение в Ruby's IRB

StackOverflow https://stackoverflow.com/questions/1382063

  •  21-09-2019
  •  | 
  •  

Вопрос

Когда я использую встроенную консоль Merb, я получаю автозаполнение вкладки, аналогичное стандартному приглашению bash.Я нахожу это полезным и хотел бы включить его в сеансах IRB, отличных от merb.Как мне получить автоматическое завершение в IRB?

Это было полезно?

Решение

Просто отбрось require 'irb/completion' в вашем irbrc.

Если это не сработает, попробуйте bond, http://tagaholic.me/bond/:

   require 'bond'; require 'bond/completion'

Облигация не только улучшает завершение irb, http://tagaholic.me/2009/07/22/better-irb-completion-with-bond.html, но также предлагает простой dsl для создания пользовательских автозаполнений.

Другие советы

Это просто повторяет информацию из комментария Коди Коуглана выше, чтобы ее было легче найти:

либо require 'irb/completion' или добавьте следующее к ~/.irbrc

IRB.conf[:AUTO_INDENT] = true
IRB.conf[:USE_READLINE] = true
IRB.conf[:LOAD_MODULES] = [] unless IRB.conf.key?(:LOAD_MODULES)
unless IRB.conf[:LOAD_MODULES].include?('irb/completion')
  IRB.conf[:LOAD_MODULES] << 'irb/completion'
end 

Это то, что сработало у меня в Mac OS 10.11.5.используя rvm.Выполните следующие действия :

  1. sudo gem install bond
  2. Создайте файл .irbrc в вашем домашнем каталоге. vi ~/.irbrc
  3. Добавьте следующие строки в .irbrc файл require 'bond' Bond.start

  4. Сохраните и закройте файл

  5. Открыть irb и использовать tab ключ к автозаполнению
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top