Atom上でRailsプロジェクト内のファイル移動を楽にするRails-Transporterというパッケージを書いた

最近Emacsからgithub製のテキストエディターであるAtomに移行しました。慣れるまで1週間ほど移行期間は必要でしたがデフォルトの設定で十分高機能で使いやすいです。自分は普段の仕事ではRailsアプリの開発をする事が多いのでRails開発で使える便利そうなパッケージを探してみたんですが、自分にあいそうなものがなかったのでrails-transporterというパッケージを作りました。

f:id:hakutoitoi:20140521011332g:plain

プロジェクト内のファイル移動を簡単にすることを目的にしており、下記のコマンドが使えるようになります。

20150323 追記

Command

open-controller(ctrl-r c)

model, view, controller-specのどれかを開いてる時、

app/models/blog.rb
app/views/blogs/show.html.erb
spec/controllers/blogs_controller_spec.rb

関連するcontrollerを開きます。

app/controllers/blogs_controller.rb

open-view(ctrl-r v)

controllerのアクションメソッド内カーソルがある時に対応するviewを開きます。

下記例でindexメソッド内にカーソルがあれば対応するviewを開きます。

class UsersController < ApplicationController
  def index
    @users = User.all
  end
 
  def show
    @user = User.find(params[:id])
  end
end

open-view-finder(ctrl-r v f)

controller, modelのどれかを開いてる時、

app/controllers/blog_controller.rb
app/models/blog.rb

関連するviewのリストを開きます

app/views/blogs/show.html.erb
app/views/blogs/index.html.erb

open-model(ctrl-r m)

controller, view, model-specのどれかを開いてる時、

app/controllers/blogs_controller.rb
app/views/blogs/show.html.erb
spec/models/blog_spec.rb

関連するmodelを開きます。

app/models/blog.rb

open-helper(ctrl-r h)

controllerを開いてる時、

app/controllers/application_controller.rb

関連するhelperを開きます。

app/helpers/application_helper.rb

open-spec(ctrl-r s)

controller, helper, modelのどれかを開いてる時、

app/controllers/blogs_controller.rb
app/helpers/blogs_helper.rb
app/models/blog.rb

関連するspecを開きます。

spec/controllers/blogs_controller_spec.rb
spec/helpers/blogs_helper_spec.rb
spec/models/blog_spec.rb

open-partial-template(ctrl-r p)

view内のrenderメソッドにカーソルがある時、

render "form"

関連する部分テンプレートを開きます。

app/views/blogs/_form.html.erb

open-asset(ctrl-r a)

カーソルがstylesheet_link_tag、javascript_include_tagにある時、

  <%= javascript_include_tag "application" %>
  <%= stylesheet_link_tag    "application" %>

関連するassetマニフェストファイルを開きます。

app/assets/javascripts/application.js
app/assets/stylesheets/application.js

assetマニフェストファイル内のrequireメソッドにカーソルがある時、

//= require blogs

関連するassetファイルを開きます。

app/assets/javascripts/blogs.js.coffee

assetマニフェストファイル内のrequire_tree、require_directoryにカーソルがある時、

//= require_tree shared
//= require_directory shared

関連するassetファイルのリストを開きます。

app/assets/javascripts/shared/file1.js.coffee
app/assets/javascripts/shared/file2.js.coffee
app/assets/javascripts/shared/file3.js.coffee

open-migration(ctrl-r d m)

migrationのリストを開きます

db/migrate/20140502021836_create_blogs.rb
db/migrate/20140512015127_create_entries.rb

open-layout(ctrl-r l)

controllerに対応するlayoutファイルを開きます。

open-factory(ctrl-r f)

model、model-specに対応するfactoryファイルを開きます。