Я установил SublimeREPL для использования с Ruby. Он пытается запустить код на Ruby 1.8.7, и я хотел бы, чтобы он работал на 1.9.3, а позже и на других версиях Ruby. Я не уверен, откуда оно наследует окружающую среду. В настоящее время мой ПУТЬ это:
/home/user/.gem/ruby/1.9.3/bin
/home/user/.rubies/ruby-1.9.3-p547/lib/ruby/gems/1.9.1/bin
/home/user/.rubies/ruby-1.9.3-p547/bin
/home/user/.rvm/gems/ruby-1.8.7-p334@global/bin
/home/user/.rvm/rubies/ruby-1.8.7-p334/bin
/usr/lib64/qt-3.3/bin
/usr/local/bin
/usr/bin
/bin
/usr/local/sbin
/usr/sbin
/sbin
/home/user/bin
/home/user/bin
/home/user/.rvm/bin
(отформатирован для удобства чтения)
Я добавил следующее на страницу настроек для SublimeREPL:
{
"default_extend_env": {"PATH": "/home/user/.rubies/ruby-1.9.3-p547/bin/ruby:{PATH}"}
}
(так же, как и попытка обратного, "{PATH}: / home ...").
Попытка запустить repl приводит к ошибке:
/home/joe/.rvm/rubies/ruby-1.8.7-p334/lib/ruby/site_ruby/1.8/rubygems/dependency.rb:296 ... (unimportant error)
Очевидно, что он не использует ruby 1.9.3. Как мне это изменить?
источник
gem env
, что мой ruby exec - 1.9.3, но исполняемый каталог, каталог установки и, что самое важное, пути к гемам - 1.8.7PATH
переменной в"default_extend_env"
переменную. Если вам интересно, посмотрите наPackages/SublimeREPL/config/Ruby/pry_repl.rb
то, что требуется.