用 ERB 的缩写换行

Wrap with abbreviation for ERB

我喜欢 Emmet 的 Wrap With Abbreviation (docs)

它让我可以从常规列表中快速创建一个 html 列表

开始:

foo
bar
baz

命令:

ul>li*  

结果:

<ul>
  <li>foo</li>
  <li>bar</li>
  <li>baz</li>
</ul>

我真的很想用 ERB 标签做同样的事情

开始:

link_to micropost.user.name, micropost.user
micropost.content
time_ago_in_words(micropost.created_at)

命令:

???

结束:

<%= link_to micropost.user.name, micropost.user %>
<%= micropost.content %>
<%= time_ago_in_words(micropost.created_at) %>

这可能吗?

目前我正在使用 erb 片段,必须逐行关注我的 erb 太糟糕了。

我只想一直关注我的 ruby,然后关注 erb 标签,然后关注 html 标签,然后关注 html classes/ids.

我发现了一个很棒的 snippet 可以让我换行,但是如果我用多行尝试它,我会得到:

开始:

user.cats
user.dogs

命令:

<snippet>
  <content><![CDATA[
<%= ${0:$TM_SELECTED_TEXT} %>
]]></content>
  <!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
  <!-- <tabTrigger>hello</tabTrigger> -->
  <!-- Optional: Set a scope to limit where the snippet will trigger -->
  <!-- <scope>source.erb</scope> -->
    <description>ERB: Wrap with =</description>
</snippet>

结果:

<%= user.cats
user.dogs %>

但我想得到

<%= user.cat %>
<%= user.dogs %>

希望得到一些帮助:)

实现此目的的一种方法是使用 Selection > Split Into LinesCtrl+Shift+L 在 Windows/Linux).一旦你这样做,当你调用代码片段时,它将单独对每个选择进行操作。