slimをerbにだいたい変換する


概要

  • 表題ままですが、過大な期待はしないでください

目的

  • erbメインのプロジェクトで、web上のslim形式のファイルをコピペしてerbファイルに使いたいという、 意識が低い アプリです。
  • 。。。といいつつ個人的には結構便利につかっています。コピペでざっくり概要つかむと便利だし。

制限

  • erbに変換といいいながら、Slimが付け加えるerbの箇所はエスケープ表記が入ります。
  • 後述の動作動画を見てもらえばわかりますが、修正しないと使えないので、まあ、ゆるーい気持ちでつかってください。

サイト

コード

動作

  • erbが埋め込まれていないslim

  • erbが埋め込まれているslim

原理

コード

重要なのはここだけです。フォームで渡されたテキスト(slim) を Slim::ERBConverter.new.call(@slim_text) で処理して表示します。

app/controllers/home_controller.rb
class HomeController < ActionController::Base
  def index
    @slim_text = params[:slim] && params[:slim][:text]
    @erb_text = @slim_text ? Slim::ERBConverter.new.call(@slim_text) : nil
  end
end

以上。