自分用のメモにrails.vimの基本動作を確認してみた。
rails.vimのインストール
ここから https://github.com/tpope/vim-rails
モデルTodoから、Controller,Viewに切り替えるには
:Econtroller
:Eview ビュー名(newやeditなど)
:Emodel
:Ehelper
モデル名を明示して、MVCを切り替えるには
例:モデルroleを表示する.
:Econtroller roles
:Eview roles/ビュー名(newやedit,showなど)
:Emodel role
名称はtabを押すと色々と補完してくれる。
gfの動作
ソースを見た方が早いのかもしれない・・・。
- クラス名でgf => そのクラスの定義ファイルに移動する.
# カーソルがApplicationController上でgfを入力する
class RolesController < ApplicationController
- controllerのメソッド名でgf => viewがある場合はそのビューファイルへ
class RolesController <...
  # カーソルがこの行にある状態でgfを入力する.
  def index
    # メソッド中にあるRole.methodなどでもgfしたら、role.rbに移動
    # するかと思いきや、ファイルが見つからないと怒られてしまった。
    # パスの設定不足?
    ...
  end
end
- モデル中のattr_accessible,has_many, メソッド中のモデル名でgf(attr_accessibleはrails4では非推奨) => モデルクラスがある場合は、その定義ファイルへ
class Role < ActiveRecord::Base
  # Userが存在する場合、userにカーソルをあててgfを入力する.
  # name(string)では飛ばない
  attr_accessible :name, :user
  def sample
    # ここでgfを入力すると、user.rbへ
    user
  end
end
- 
viewの'form'などでgf => 対応するviewファイルへジャンプ 
- 
以下でgfしても反応無し? 
- 
helper 
- 
js 
- 
scheme.rb 
- 
routes.rb 
:Aコマンド (関連ファイルに切り替え)
(カーソル位置に依らない?)
凡例: :Aを実行したファイル => 移動先ファイル
- 
モデル => モデルテスト 
 例:role.rb => role_test.rb
- 
ビューファイル => コントローラテスト 
 例:roles/_form.html.erb => roles_controller_test.rb
- 
ヘルパー => ヘルパーテスト 
 例:roles_helper.rb => roles_helper_test.rb
- 
application.js => application_heler.rb 
- 
xxx.js => application.js 
- 
scss => 反応無し 
- 
migration => 定義済みのmigrationファイルを循環する 
- 
scheme.rb => seeds.rb 
- 
seeds.rb => scheme.rb 
- 
application.rb => routes.rb 
- 
routes.rb => application.rb 
:Rコマンド
(カーソル位置に依る)
- RolesController => RolesHelper
- RolesController::index => views/roles/index.html.erb
- views/roles/index.html.erb => RolesController::index
- Roles => schema.rb
- schema.rb => カーソルのあるモデルクラス
- RolesHelper => RolesHelerTest
- environment.rb => routes.rb
- routes.rb => application.rb
- application.rb => routes.rb