How to post-process HTML to add "target blank" to all links in Ruby?
I am currently using Rinku (gem) to auto-link text, and that works great.
However, I am post-processing HTML and some links are already links, and therefore are not processed with Rinku.
How could I add the target blank attribute to those?
application_controller.rb
def text_renderer text
AutoHTML.new(text).render
end
auto_html.rb
class AutoHTML
include ActionView::Helpers
def initialize text
@text = text
end
def render
text = prepare @text
text = auto_link(text)
text.html_safe
end
private
def prepare text
if text.nil? || text.empty?
""
else
text
end
end
def auto_link text
Rinku.auto_link(text, :all, 'target="_blank"')
end
end
target="_blank"
... – Mckelvey