如何从缓冲区运行ruby代码而不实际将缓冲区保存在文件中?方案是a)切换到临时缓冲区b)Mx ruby-mode c)类型ruby代码d)"编译"缓冲区并将结果打印在另一个缓冲区中.我不想将缓冲区内容保存在文件中,然后"编译"该文件
更新1-9-2011哪些是ruby-mode和inf-ruby的最新版本,我在哪里可以获得它们?我使用ubuntu natty版本的ruby模式和emacs 23.2的inf-ruby的elpa版本.在干净的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))
这是如何计算的?这是循环的
更新:(在irb中)
Class.superclass = Module
Module.class = Class
Run Code Online (Sandbox Code Playgroud)
当Class是Module underclass时,怎么可能说Module的类是Class?这是圆形,鸡肉和鸡蛋的东西.
对象:相同的问题:对象是对象模型中的根对象.它的类怎么能成为Class,因为Class对象还不存在呢?
说我有:
begin
2.times do
a = 1
1/0
end
rescue
puts $!
debugger
end
Run Code Online (Sandbox Code Playgroud)
在这个例子中,我想得到的价值a.如果a在begin块中初始化,那么我可以在救援时访问它.但是,在此示例中,a是块本地的.当我解救时,有没有办法在异常时获得绑定?