jumilla/erb2blade

convert .*.erb to .blade.php

v2.0 2015-07-18 18:43 UTC

README

機能

  • RailsのテキストテンプレートErbファイル(.*.erb)を、Laravel4のビューテンプレートBladeファイル(.blade.php)に変換します。
  • Artisanコマンドview:erb2bladeで変換できます。

対応erbディレクティブ

  • <%# ... %> => {{-- --}}
  • <%= render ... %> => @include (...)
  • <%= ... %> => {{ }}
  • <% if statement %> => @if (statement)
  • <% unless statement %> => @if (!(statement))
  • <% while statement do %> => @while (statement)
  • <% statement.each do |value| %> => @foreach (statement as $value)
  • <% statement.each_with_index do |value, key| %> => @foreach (statement as $key => $value)
  • <% case statement %> => <?php switch (statement): ?>
  • <% when statement %> => <?php case statement: ?>
  • <% else %> => @else
  • <% elsif %> => @elseif
  • <% end %> => @end?
  • <% ... %> => <?php ... ?>

インストール方法

composer.jsonファイルを編集します。 行末のカンマはJSON記法に合わせて設定してください。

Laravel 5

    "require": [
        "laravel/framework": "5.1.*",
        ...
        ↓追加する
        "jumilla/erb2blade": "~2.0"
    ],

Laravel 4

    "require": [
        "laravel/framework": "4.2.*",
        ...
        ↓追加する
        "jumilla/erb2blade": "~1.0"
    ],

以下のコマンドを実行して、Laravel Extension Packをセットアップしてください。

$ composer update

もしくは、

$ php composer.phar update

app/config/app.configファイルを編集します。

    `providers` => [
        `Illuminate\Foundation\Providers\ArtisanServiceProvider`,
        ...
        ↓追加する
        `Jumilla\Erb2Blade\ServiceProvider`,
    ],

コマンド

php artisan view:erb2blade

app/viewsディレクトリ下にある全ての.*.erbファイルを、.blade.phpファイルに変換します。

注意

  • <% %>ディレクティブの中の変数までは見ていません。$を付けるなどして手動で変換してください。
  • Rubyのendキーワードは、if, unless, case, while, until, for の制御構文の終端シンボルです。@end?に変換するので手動で変換してください。
  • Rubyのcase/when/endブロックの変換は不完全です。@end?の部分を <?php endswitch; ?>に置き換えてください。

ライセンス

MIT

著者

Fumio Furukawa (fumio@jumilla.me)