SlideShare a Scribd company logo
1 of 15
Download to read offline
日本Androidの会 沖縄支部 workshop@Naha Vol.22
                          2012/06/09
                          @naopontan
   @naopontan




                 2
   導入
   ドキュメント参照方法
   6つのコマンド(機能)
    ◦ 移動系
      gf
      [f と ]f
      :Rmodel や :Rcontroller など
    ◦ 編集系
                      (Abbreviation)
      入力中にタブキーで補完(Abbreviation)
      入力中に CTRL-X_CTRL-W で候補選択
      パーシャルファイルの抽出


                                       3
    サイト
     ◦ http://www.vim.org/scripts/script.php?script_id=1567
1.    zipをダウンロード(2012/5/29現在で Ver4.4)
2.    解凍
3.    ~/.vim/ 配下に設置
$ cd /tmp
$ wget http://www.vim.org/scripts/download_script.php?src_id=16429 -O rail.vim.4.4.zip
$ unzip rail.vim.4.4.zip
Archive: rail.vim.4.4.zip
 inflating: autoload/rails.vim
 inflating: plugin/rails.vim
 inflating: doc/rails.txt
$ cp -r autoload/ doc/ plugin/ ~/.vim



                                                                                         4
   :help rails
    ◦ エラーが出る時は :helptags ~/.vim/doc
    ◦ 閉じる際は :close




                                      5
   カーソルのある部分を判定して、よきにジャンプ
    ◦ とにかく「行きたいな」と思ったところにカーソルを置いて                      と入力し
      てみる
    ◦ 以下、ドキュメントの一部抜粋
    Example uses of |gf|, and where they might lead.
    (* indicates cursor position)
    >
           Pos*t.first
    <       app/models/post.rb ~
    >
           has_many :c*omments
    <       app/models/comment.rb ~
    >
           link_to 'Home', :controller => 'bl*og'
    <       app/controllers/blog_controller.rb ~



                                                              6
   User モデルに行きたい場合
    :Rmodel user

    ◦ tab で補完できます
        :Rmo[tab] us[tab]


   UsersController に行きたい場合
    :Rcontroller user

    ◦ Userモデルを開いている状態なら省略可能です
       :Rcontroller


   他は想像通りです。view, helper, layout, ...
     ◦ 行きたいところをイメージして、頭文字入力⇒Tabと続く...
                                         7
   ]f を使っての コントローラとビューの行ったり来たりが
    便利!
            Current file               Alternate file             Related file

model                      unit test                    schema definition

controller (in method)     functional test              template (view)

template (view)            functional test              controller (jump to method)

migration                  previous migration           next migration

config/database.yml        config/routes.rb             config/envrionments/*.rb


    ◦ [f と ]f は Alternate と Related です
    ◦ この辺は体で覚える感じです



                                                                                      8
   Controller 編集中に威力を発揮
    入力中にタブキーで補完してくれます
    ◦ pa[tab] ⇒ params
    ◦ re[tab] ⇒ redirect_to
    ◦ rr[tab] ⇒ render

   :Rab[tab] で一覧確認できます




                              9
   例えばモデル編集中に has[CTRL-X][CTRL-U] で
    候補が出現。カーソルキーで選択




       ビューを編集中にフォームヘルパーメソッド入力等に
        も良く使います
          text[CTRL-X][CTRL-U] など

                                       10
   View で使います
    ◦ visual モードで行選択 ⇒ :Rextract book と入力まで




                                              11
   app/view/books/_book.html.erbが上部に表示
    された
   下部は render の1行になっている




                                          12
   導入
   ドキュメント参照方法
   6つのコマンド(機能)
    ◦ 移動系
      gf
      [f と ]f
      :Rmodel や :Rcontroller など
    ◦ 編集系
                      (Abbreviation)
      入力中にタブキーで補完(Abbreviation)
      入力中に CTRL-X_CTRL-W で候補選択
      パーシャルファイルの抽出


                                       13
   redmine のソースコードを使って色々とごにょごにょ
    します
    ◦ $ svn checkout http://redmine.rubyforge.org/svn/trunk/ redmine




                                                                       14
   おまけ
    ◦ 今回使った Macで入力したキーを表示してくれるソフト
      KeyCastr
        http://download.cnet.com/KeyCastr/3000-2075_4-
         125977.html
        システム環境設定⇒ユニバーサルアクセス⇒補助装置にアクセスで
         きるようにする
         をチェック




                                                          15

More Related Content

Similar to Rails vim easy

WTM53 phpフレームワーク いまさらcodeigniter
WTM53 phpフレームワーク いまさらcodeigniterWTM53 phpフレームワーク いまさらcodeigniter
WTM53 phpフレームワーク いまさらcodeigniterMasanori Oobayashi
 
【学習メモ#1st】12ステップで作る組込みOS自作入門
【学習メモ#1st】12ステップで作る組込みOS自作入門【学習メモ#1st】12ステップで作る組込みOS自作入門
【学習メモ#1st】12ステップで作る組込みOS自作入門sandai
 
10分でわかるFuelPHP @ 2011/12
10分でわかるFuelPHP @ 2011/1210分でわかるFuelPHP @ 2011/12
10分でわかるFuelPHP @ 2011/12kenjis
 
Programming camp Codereading
Programming camp CodereadingProgramming camp Codereading
Programming camp CodereadingHiro Yoshioka
 
Db2 Warehouse Spark利用ガイド チュートリアル編
Db2 Warehouse Spark利用ガイド チュートリアル編Db2 Warehouse Spark利用ガイド チュートリアル編
Db2 Warehouse Spark利用ガイド チュートリアル編IBM Analytics Japan
 
10分でわかるFuelPHP @ 2012/05 OSC2012 Nagoya
 10分でわかるFuelPHP @ 2012/05 OSC2012 Nagoya 10分でわかるFuelPHP @ 2012/05 OSC2012 Nagoya
10分でわかるFuelPHP @ 2012/05 OSC2012 Nagoyakenjis
 
Lisp Tutorial for Pythonista Day 6
Lisp Tutorial for Pythonista Day 6Lisp Tutorial for Pythonista Day 6
Lisp Tutorial for Pythonista Day 6Ransui Iso
 
10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1
 10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1 10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1
10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1kenjis
 
LLVM overview 20110122
LLVM overview 20110122LLVM overview 20110122
LLVM overview 20110122nothingcosmos
 
Building production server on docker
Building production server on dockerBuilding production server on docker
Building production server on dockerHiroshi Miura
 
Building production server on docker
Building production server on dockerBuilding production server on docker
Building production server on dockerHiroshi Miura
 
2011.09.18 v7から始めるunix まとめ
2011.09.18 v7から始めるunix まとめ2011.09.18 v7から始めるunix まとめ
2011.09.18 v7から始めるunix まとめMakiko Konoshima
 
ホームディレクトリに埋もれた便利なコードをさがせ!
ホームディレクトリに埋もれた便利なコードをさがせ!ホームディレクトリに埋もれた便利なコードをさがせ!
ホームディレクトリに埋もれた便利なコードをさがせ!Yohei Fushii
 
Edge os(vyos)の基本(入門編)
Edge os(vyos)の基本(入門編)Edge os(vyos)の基本(入門編)
Edge os(vyos)の基本(入門編)Akira Kaneda
 
CodeIgniter東京勉強会 2011.05.14
CodeIgniter東京勉強会 2011.05.14CodeIgniter東京勉強会 2011.05.14
CodeIgniter東京勉強会 2011.05.14Takako Miyagawa
 

Similar to Rails vim easy (20)

WTM53 phpフレームワーク いまさらcodeigniter
WTM53 phpフレームワーク いまさらcodeigniterWTM53 phpフレームワーク いまさらcodeigniter
WTM53 phpフレームワーク いまさらcodeigniter
 
【学習メモ#1st】12ステップで作る組込みOS自作入門
【学習メモ#1st】12ステップで作る組込みOS自作入門【学習メモ#1st】12ステップで作る組込みOS自作入門
【学習メモ#1st】12ステップで作る組込みOS自作入門
 
Capistrano
CapistranoCapistrano
Capistrano
 
10分でわかるFuelPHP @ 2011/12
10分でわかるFuelPHP @ 2011/1210分でわかるFuelPHP @ 2011/12
10分でわかるFuelPHP @ 2011/12
 
Programming camp Codereading
Programming camp CodereadingProgramming camp Codereading
Programming camp Codereading
 
Db2 Warehouse Spark利用ガイド チュートリアル編
Db2 Warehouse Spark利用ガイド チュートリアル編Db2 Warehouse Spark利用ガイド チュートリアル編
Db2 Warehouse Spark利用ガイド チュートリアル編
 
10分でわかるFuelPHP @ 2012/05 OSC2012 Nagoya
 10分でわかるFuelPHP @ 2012/05 OSC2012 Nagoya 10分でわかるFuelPHP @ 2012/05 OSC2012 Nagoya
10分でわかるFuelPHP @ 2012/05 OSC2012 Nagoya
 
Lisp Tutorial for Pythonista Day 6
Lisp Tutorial for Pythonista Day 6Lisp Tutorial for Pythonista Day 6
Lisp Tutorial for Pythonista Day 6
 
10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1
 10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1 10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1
10分でわかるFuelPHP @ 2013/04 FuelPHP入門ハンズオン vol.1
 
LLVM overview 20110122
LLVM overview 20110122LLVM overview 20110122
LLVM overview 20110122
 
Building production server on docker
Building production server on dockerBuilding production server on docker
Building production server on docker
 
Building production server on docker
Building production server on dockerBuilding production server on docker
Building production server on docker
 
Ansible2.0と実用例
Ansible2.0と実用例Ansible2.0と実用例
Ansible2.0と実用例
 
2011.09.18 v7から始めるunix まとめ
2011.09.18 v7から始めるunix まとめ2011.09.18 v7から始めるunix まとめ
2011.09.18 v7から始めるunix まとめ
 
ホームディレクトリに埋もれた便利なコードをさがせ!
ホームディレクトリに埋もれた便利なコードをさがせ!ホームディレクトリに埋もれた便利なコードをさがせ!
ホームディレクトリに埋もれた便利なコードをさがせ!
 
Edge os(vyos)の基本(入門編)
Edge os(vyos)の基本(入門編)Edge os(vyos)の基本(入門編)
Edge os(vyos)の基本(入門編)
 
Tokyor23 doradora09
Tokyor23 doradora09Tokyor23 doradora09
Tokyor23 doradora09
 
BBBBB
BBBBBBBBBB
BBBBB
 
1MB
1MB1MB
1MB
 
CodeIgniter東京勉強会 2011.05.14
CodeIgniter東京勉強会 2011.05.14CodeIgniter東京勉強会 2011.05.14
CodeIgniter東京勉強会 2011.05.14
 

Recently uploaded

論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 

Recently uploaded (9)

論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 

Rails vim easy

  • 1. 日本Androidの会 沖縄支部 workshop@Naha Vol.22 2012/06/09 @naopontan
  • 2. @naopontan 2
  • 3. 導入  ドキュメント参照方法  6つのコマンド(機能) ◦ 移動系  gf  [f と ]f  :Rmodel や :Rcontroller など ◦ 編集系 (Abbreviation)  入力中にタブキーで補完(Abbreviation)  入力中に CTRL-X_CTRL-W で候補選択  パーシャルファイルの抽出 3
  • 4. サイト ◦ http://www.vim.org/scripts/script.php?script_id=1567 1. zipをダウンロード(2012/5/29現在で Ver4.4) 2. 解凍 3. ~/.vim/ 配下に設置 $ cd /tmp $ wget http://www.vim.org/scripts/download_script.php?src_id=16429 -O rail.vim.4.4.zip $ unzip rail.vim.4.4.zip Archive: rail.vim.4.4.zip inflating: autoload/rails.vim inflating: plugin/rails.vim inflating: doc/rails.txt $ cp -r autoload/ doc/ plugin/ ~/.vim 4
  • 5. :help rails ◦ エラーが出る時は :helptags ~/.vim/doc ◦ 閉じる際は :close 5
  • 6. カーソルのある部分を判定して、よきにジャンプ ◦ とにかく「行きたいな」と思ったところにカーソルを置いて と入力し てみる ◦ 以下、ドキュメントの一部抜粋 Example uses of |gf|, and where they might lead. (* indicates cursor position) > Pos*t.first < app/models/post.rb ~ > has_many :c*omments < app/models/comment.rb ~ > link_to 'Home', :controller => 'bl*og' < app/controllers/blog_controller.rb ~ 6
  • 7. User モデルに行きたい場合 :Rmodel user ◦ tab で補完できます :Rmo[tab] us[tab]  UsersController に行きたい場合 :Rcontroller user ◦ Userモデルを開いている状態なら省略可能です :Rcontroller  他は想像通りです。view, helper, layout, ... ◦ 行きたいところをイメージして、頭文字入力⇒Tabと続く... 7
  • 8. ]f を使っての コントローラとビューの行ったり来たりが 便利! Current file Alternate file Related file model unit test schema definition controller (in method) functional test template (view) template (view) functional test controller (jump to method) migration previous migration next migration config/database.yml config/routes.rb config/envrionments/*.rb ◦ [f と ]f は Alternate と Related です ◦ この辺は体で覚える感じです 8
  • 9. Controller 編集中に威力を発揮 入力中にタブキーで補完してくれます ◦ pa[tab] ⇒ params ◦ re[tab] ⇒ redirect_to ◦ rr[tab] ⇒ render  :Rab[tab] で一覧確認できます 9
  • 10. 例えばモデル編集中に has[CTRL-X][CTRL-U] で 候補が出現。カーソルキーで選択  ビューを編集中にフォームヘルパーメソッド入力等に も良く使います  text[CTRL-X][CTRL-U] など 10
  • 11. View で使います ◦ visual モードで行選択 ⇒ :Rextract book と入力まで 11
  • 12. app/view/books/_book.html.erbが上部に表示 された  下部は render の1行になっている 12
  • 13. 導入  ドキュメント参照方法  6つのコマンド(機能) ◦ 移動系  gf  [f と ]f  :Rmodel や :Rcontroller など ◦ 編集系 (Abbreviation)  入力中にタブキーで補完(Abbreviation)  入力中に CTRL-X_CTRL-W で候補選択  パーシャルファイルの抽出 13
  • 14. redmine のソースコードを使って色々とごにょごにょ します ◦ $ svn checkout http://redmine.rubyforge.org/svn/trunk/ redmine 14
  • 15. おまけ ◦ 今回使った Macで入力したキーを表示してくれるソフト  KeyCastr  http://download.cnet.com/KeyCastr/3000-2075_4- 125977.html  システム環境設定⇒ユニバーサルアクセス⇒補助装置にアクセスで きるようにする をチェック 15