title: Title tag is escaped twice in Rails/HAML
body: <p>I have a Rails 3.2.13 app in which I have titles that contain the site name and a page specific text. The common part is defined in the layout and the page specific part in each HAML view.</p>
  
  <p>First I used <code>provide</code> like this:</p>
  
  <pre><code># layout.html.haml
  %title= (content_for?(:title) ? "#{yield(:title)} | " : "") + "Chunky-B"
  
  # show.html.haml
  - provide(:title, @listing.name)
  </code></pre>
  
  <p>My problem is that when the page specific content is pulled from a model it gets <strong>escaped twice</strong>. If <code>@listing.name</code> contains an (unescaped) ampersand I get the output</p>
  
  <pre><code>&lt;title&gt;Bacon &amp;amp;amp; Eggs | Chunky-B&lt;/title&gt;
  </code></pre>
  
  <p>I recently switched to using <a href="https://github.com/kpumuk/meta-tags" rel="nofollow noreferrer">the <code>meta-tags</code> gem</a> for my titles and meta descriptions, but the same issue persists.</p>
  
  <p>I understand that I need some combination of <code>h</code>, <code>html_safe</code> or maybe even <code>raw</code>. With the answers to <a href="https://stackoverflow.com/q/4251284/454094">this question</a> and some trial and error I would probably get there, but I haven't had to bypass built-in escaping before and don't feel like second-guessing myself at the risk of opening vulnerabilities. I got a hunch of how it should be done while writing this question, but I'm betting eager SO answerers will beat me to it. :)</p>