Ruby &引用;执行并更新';#=&燃气轮机';标记”;为了维姆
VIM中是否有可能为ruby代码重复“执行并更新“#=>”标记”TextMate特性 我想要一些像:Ruby &引用;执行并更新';#=&燃气轮机';标记”;为了维姆,ruby,vim,plugins,textmate,Ruby,Vim,Plugins,Textmate,VIM中是否有可能为ruby代码重复“执行并更新“#=>”标记”TextMate特性 我想要一些像: x = 2 class A def a 42 end end x # => A.new.a # => 输入一些命令。。。得到 x = 2 class A def a 42 end end x # => 2 A.new.a # => 42 以下是此功能的说明: 另一个绝对值得了解的工具 是“执行和更新”#=>” “标记”命令(打开⌃
x = 2
class A
def a
42
end
end
x # =>
A.new.a # =>
输入一些命令。。。得到
x = 2
class A
def a
42
end
end
x # => 2
A.new.a # => 42
以下是此功能的说明:
另一个绝对值得了解的工具
是“执行和更新”#=>”
“标记”命令(打开⌃⇧⌘E默认情况下)。
要使用它,请添加一些注释标记
(上面有一个片段#⇥ 那将
为您插入这些)到
您希望看到的线路
结果,然后触发
指挥部。TextMate将运行您的代码
并报告测试结果
注释中的行内联。这
该功能非常适合发布代码
在线,因为它显示了源代码和
把结果放在一起
使用来自的
xmpfilter
。将其作为Vim函数编写似乎不太难。试试这个:
function! ExecuteAndUpdate()
ruby << EOF
marker = '# =>'
buf = VIM::Buffer.current
lines = File.readlines(buf.name)
bnd = binding
eval(lines.join("\n"), bnd)
lines.each_with_index do |line, i|
if line.match(/#{marker}/)
result = marker + ' ' + eval(line, bnd).inspect
buf[i+1] = line.sub(/#{marker}.*/, result).chomp
end
end
EOF
endfunction
函数!ExecuteAndUpdate()
鲁比:是的,我想这是另一个限制。