Запустить ruby ​​из буфера emacs

Как я могу запустить кусок кода ruby ​​из буфера, фактически не сохраняя буфер в файле? Сценарий должен был бы а) переключиться на буфер нуля б) Рубиновый режим M-x c) тип рубинового кода d) "скомпилировать" буфер и распечатать результаты в другом буфере. Я не хочу сохранять содержимое буфера в файле, а затем "компилировать" этот файл

ОБНОВЛЕНИЕ 1-9-2011 Каковы последние версии рубинового режима и inf-ruby, и где я могу их получить? Я использую ubuntu natty версию рубинового режима и версию elpa inf-ruby emacs 23.2. В чистой конфигурации emacs следующая конфигурация (см. Ниже) сбой:

can't convert nil into String 
from (irb):1:in `eval' 
from (irb):1". 

Конфигурация - это всего лишь следующее, никаких других конфигурационных директив в emacs.d:

(require 'ruby-mode)
(load-file "Configs/.emacs.d/elpa/inf-ruby-2.1/inf-ruby.el")

(autoload 'inf-ruby "inf-ruby" "Run an inferior Ruby pathrocess" t)
(autoload 'inf-ruby-keys "inf-ruby" "" t)
(eval-after-load 'ruby-mode
  '(add-hook 'ruby-mode-hook 'inf-ruby-keys))

Ответ 1

Вы можете сделать это с помощью inf-ruby.el.

С установленным inf-ruby, M-x inf-ruby запускает новый интерпретатор ruby ​​в фоновом режиме, на который вы можете отправлять код с помощью команд ruby-send-*, таких как ruby-send-region (по умолчанию привязывается к C-c C-r). Чтобы отправить весь буфер, выберите все с помощью C-x h, затем нажмите C-c C-r.

Update, 2011-09-02: Последняя версия inf-ruby.el (2.1.1, доступная в ELPA), поддерживается с помощью "nonsequitur" on github и пакеты моментальных снимков доступны в Melpa.

Ответ 2

Несколько вариантов для вас попробовать

1. Ринари из Github

Он утверждает, что

, направленный на то, чтобы Emacs превратилась в первоклассную разработку Ruby и Rails среда


2. ruby-compilation.el - это то, что вам нужно.

Здесь есть поток на здесь, который я использовал и нашел полезным.

Крис