Sublime Text:如何在Ruby中将花括号切换为do-end块

时间:2013-03-26 08:38:43

标签: ruby sublimetext2 code-snippets

我经常使用片段在SublimeText2中编写代码。但是有一件事我无法实现:将一个花括号的块切换到一块do ... end。

假设我正在尝试构建一个多行的每个块。所以我输入:

[1,2,3].ea<TAB>

这将导致:

[1,2,3].each { |e|  }

现在我需要一些魔力来切换到:

[1,2,3].each do |e| 
  # cursor
end

我很确定在TextMate中有一种方法可以实现这一点,所以在SublimeText中也会有这种方式。有什么想法吗?

更新

我在Textmate中找到了功能描述:(TextMate shortcuts you should be using - &gt;切换'执行...结束'/'{...}')...这正是我想要的。

2 个答案:

答案 0 :(得分:4)

经过一些研究后,我发现了这个插件:https://github.com/irohiroki/RubyBlockConverter

它完全符合我的要求。

答案 1 :(得分:2)

为此创建新的代码段:

转到工具 - &gt;新的代码片段并插入如下内容:

<snippet>
    <content><![CDATA[each do |${1:e}| $0 
    end]]></content>
    <tabTrigger>ead</tabTrigger>
    <scope>source.ruby</scope>
    <description>each do |e| .. end</description>
</snippet>

然后将其保存并与ead [Tab]

一起使用