080720 Vim M

2,956 views

Published on

  • Be the first to comment

  • Be the first to like this

080720 Vim M

  1. 1. VimM #1 Hash Movement
  2. 2. 自己紹介
  3. 3. ・はてな Hash ・ Twitter T_Hash ・ハシモトタクヤ ・ 1986/01/21 生 ・ハチロク世代 ・大学院修士1年 ・研究内容 : バイオ+コンピュータ
  4. 4. ロドプシン暗活性変異体の Molecular Dynamics シミュレーション
  5. 5. VimM とは
  6. 6. <ul><li>関東地方を中心とした Vim 勉強会 </li></ul><ul><ul><li>関西 : ujihisa 氏の Vim 勉強会 </li></ul></ul><ul><ul><li>九州 : nagasaki.vim </li></ul></ul><ul><li>きっかけは tokyo-emacs と twitter -> 楽しそう ->Vim もやらないかな -> 自分で作ろう! </li></ul>
  7. 7. VimM <ul><li>誰がやるかは問題ではない </li></ul><ul><li>40 人以上も勉強会に興味のある人がいる </li></ul><ul><li>活動・交流の土台を提供 </li></ul><ul><li>              </li></ul><ul><li>そのための M (movement) </li></ul>Linger はてなグループ Twitter 個人
  8. 8. 今日の予定など 14:00   開始 , 全体説明 14:10 〜 個別発表 (6 人 ) id:Hash id:taku-o @mootoh @suztomo id:kei-os2007 id:ujihisa (ust) ゆっくりしゃべってね!
  9. 9. 終わったら ネタがある人はしゃべったり、 vimrc を晒したり、 雑談したり。 17:30  片付け、解散 18:30  懇親会 (滑り込み参加 ok ぽい )
  10. 10. 良かった点、改良点などをレポートしてくれると嬉しいです。
  11. 11. [ イントロ ] Vim との出会い
  12. 12. 2006 年夏 ( 株 ) ECナビ(ここ) で1ヶ月のインターン
  13. 13. Rails アプリ作った。その中で、 Vim をはじめて使った 。
  14. 14. 一ヶ月後には、指が勝手に esc を叩くようになっていた ・゚・ ( つ Д ` ) ・゚・
  15. 15. 今は プログラムも ブログも 大学のレポートも Vim
  16. 16. でもただ「使える」だけで、まだ初心者。
  17. 17. では、初心者を脱するためには、どこを押さえればいいのか?
  18. 18. [ 本編 ] Vim Beginner++    使い始めたばかりの人、普段 Vim を使わない人のために 初心者である自分が基本機能を勉強して、 便利だと思ったところを紹介。
  19. 19. <ul><li>ヘルプの読み方 </li></ul><ul><li>文字数をカウントする </li></ul><ul><li>複数のファイルを編集する </li></ul><ul><li>単語補完 </li></ul><ul><li>カーソル位置の単語を検索 / grep </li></ul><ul><li>同じ操作を繰り返す </li></ul><ul><li>Vim 内からコマンドを実行 </li></ul><ul><li>キーマップ </li></ul><ul><li>レジスタ </li></ul>
  20. 20. <ul><li>ヘルプの読み方 </li></ul><ul><li>文字数をカウントする </li></ul><ul><li>複数のファイルを編集する </li></ul><ul><li>単語補完 </li></ul><ul><li>カーソル位置の単語を検索 / grep </li></ul><ul><li>同じ操作を繰り返す </li></ul><ul><li>Vim 内からコマンドを実行 </li></ul><ul><li>キーマップ </li></ul><ul><li>レジスタ </li></ul>
  21. 21. :help の読み方 <ul><li><F1> or :help でメイン </li></ul><ul><ul><li><C-]> と <C-t> でブラウジング </li></ul></ul><ul><li>:help (topic) </li></ul><ul><ul><li>候補表示 :help xx<C-d> </li></ul></ul><ul><li>C-R って何の操作? </li></ul><ul><ul><li>-> :help CTRL-R </li></ul></ul>
  22. 22. <ul><li>ヘルプの読み方 </li></ul><ul><li>文字数をカウントする </li></ul><ul><li>複数のファイルを編集する </li></ul><ul><li>単語補完 </li></ul><ul><li>カーソル位置の単語を検索 / grep </li></ul><ul><li>同じ操作を繰り返す </li></ul><ul><li>Vim 内からコマンドを実行 </li></ul><ul><li>キーマップ </li></ul><ul><li>レジスタ </li></ul>
  23. 23. 文字数をカウントする <ul><li>ビジュアルモードで選択 </li></ul><ul><li>:’<, ‘>s/./&/g </li></ul><ul><li>すべての文字を自分自身に置換 -> ヒット数表示 </li></ul><ul><ul><ul><li>& の利用例 :s/foo/&_bar/g </li></ul></ul></ul>
  24. 24. <ul><li>ヘルプの読み方 </li></ul><ul><li>文字数をカウントする </li></ul><ul><li>複数のファイルを編集する </li></ul><ul><li>単語補完 </li></ul><ul><li>カーソル位置の単語を検索 / grep </li></ul><ul><li>同じ操作を繰り返す </li></ul><ul><li>Vim 内からコマンドを実行 </li></ul><ul><li>キーマップ </li></ul><ul><li>レジスタ </li></ul>
  25. 25. 複数のファイルを編集する : buffer <ul><li>編集対象に複数のファイルを指定 </li></ul><ul><li>or :e filename </li></ul><ul><li>    ↓ </li></ul><ul><li>:b <tab> で選択 / No / filename </li></ul><ul><li>一覧表示は :buffers or :ls </li></ul><ul><li>別の方法 : ウィンドウを分割 (:sp, :vs) </li></ul>
  26. 26. <ul><li>ヘルプの読み方 </li></ul><ul><li>文字数をカウントする </li></ul><ul><li>複数のファイルを編集する </li></ul><ul><li>単語補完 </li></ul><ul><li>カーソル位置の単語を検索 / grep </li></ul><ul><li>同じ操作を繰り返す </li></ul><ul><li>Vim 内からコマンドを実行 </li></ul><ul><li>キーマップ </li></ul><ul><li>レジスタ </li></ul>
  27. 27. 単語補完 : complete <ul><li>インサートモードで </li></ul><ul><li>C-N, C-P </li></ul><ul><li>もっと便利に </li></ul><ul><ul><li>辞書補完(辞書ファイルを用意して、 C-x C-k) </li></ul></ul><ul><ul><li>autocomplpop.vim </li></ul></ul>
  28. 28. <ul><li>ヘルプの読み方 </li></ul><ul><li>文字数をカウントする </li></ul><ul><li>複数のファイルを編集する </li></ul><ul><li>単語補完 </li></ul><ul><li>カーソル位置の単語を検索 / grep </li></ul><ul><li>同じ操作を繰り返す </li></ul><ul><li>Vim 内からコマンドを実行 </li></ul><ul><li>キーマップ </li></ul><ul><li>レジスタ </li></ul>
  29. 29. カーソル位置の単語を検索 <ul><li>編集中ファイルから検索 </li></ul><ul><ul><li>#, * </li></ul></ul><ul><li>カレントフォルダから grep </li></ul><ul><ul><li>:grep <cword> ./* </li></ul></ul>
  30. 30. <ul><li>ヘルプの読み方 </li></ul><ul><li>文字数をカウントする </li></ul><ul><li>複数のファイルを編集する </li></ul><ul><li>単語補完 </li></ul><ul><li>カーソル位置の単語を検索 / grep </li></ul><ul><li>同じ操作を繰り返す </li></ul><ul><li>Vim 内からコマンドを実行 </li></ul><ul><li>キーマップ </li></ul><ul><li>レジスタ </li></ul>
  31. 31. 同じ操作を繰り返す <ul><li>単純に、前の操作を繰り返し </li></ul><ul><ul><li>. </li></ul></ul><ul><li>q で操作を記録 </li></ul><ul><ul><li>qa -> 操作 -> q( 終了 ) </li></ul></ul><ul><ul><li>↑ a はなんでもいい </li></ul></ul><ul><ul><li>@a で呼出し。 [email_address] とかもできる </li></ul></ul>
  32. 32. <ul><li>ヘルプの読み方 </li></ul><ul><li>文字数をカウントする </li></ul><ul><li>複数のファイルを編集する </li></ul><ul><li>単語補完 </li></ul><ul><li>カーソル位置の単語を検索 / grep </li></ul><ul><li>同じ操作を繰り返す </li></ul><ul><li>Vim 内からコマンドを実行 </li></ul><ul><li>キーマップ </li></ul><ul><li>レジスタ </li></ul>
  33. 33. Vim 内からコマンドを実行 <ul><li>外部プログラムへ渡す </li></ul><ul><ul><li>:!ls </li></ul></ul><ul><ul><li>:!ruby % ( 編集中のファイルを Ruby で実行 ) </li></ul></ul><ul><ul><li>範囲選択して任意の部分を渡す </li></ul></ul><ul><ul><ul><li>:’<, ‘>!sort とか。 </li></ul></ul></ul>
  34. 34. <ul><li>ヘルプの読み方 </li></ul><ul><li>文字数をカウントする </li></ul><ul><li>複数のファイルを編集する </li></ul><ul><li>単語補完 </li></ul><ul><li>カーソル位置の単語を検索 / grep </li></ul><ul><li>同じ操作を繰り返す </li></ul><ul><li>Vim 内からコマンドを実行 </li></ul><ul><li>キーマップ </li></ul><ul><li>レジスタ </li></ul>
  35. 35. キーマップ <ul><li>map </li></ul><ul><ul><li>:map <F2> :!ruby %<CR> </li></ul></ul><ul><ul><li>:imap () ()<Left> </li></ul></ul><ul><li>普段使いの時は .vimrc に書く </li></ul><ul><li>Emacs 風のカーソル移動にすることも </li></ul><ul><ul><li>:map(imap) <C-f> <RIGHT> とか。 </li></ul></ul>
  36. 36. <ul><li>ヘルプの読み方 </li></ul><ul><li>文字数をカウントする </li></ul><ul><li>複数のファイルを編集する </li></ul><ul><li>単語補完 </li></ul><ul><li>カーソル位置の単語を検索 / grep </li></ul><ul><li>同じ操作を繰り返す </li></ul><ul><li>Vim 内からコマンドを実行 </li></ul><ul><li>キーマップ </li></ul><ul><li>レジスタ </li></ul>
  37. 37. レジスタ <ul><li>コピー / 削除した文字列を保存 </li></ul><ul><ul><li>:reg で見れる </li></ul></ul><ul><ul><li>q で記録した操作もレジスタに保存 </li></ul></ul><ul><li>貼り付け </li></ul><ul><ul><li>ノーマルモードでは  ” [ 文字 ]p </li></ul></ul><ul><ul><li>インサートモードでは  <C-r>[ 文字 ] </li></ul></ul><ul><li>逆に、” [ 文字 ]y で指定して保存 </li></ul>
  38. 38. <ul><li>ヘルプの読み方 </li></ul><ul><li>文字数をカウントする </li></ul><ul><li>複数のファイルを編集する </li></ul><ul><li>単語補完 </li></ul><ul><li>カーソル位置の単語を検索 / grep </li></ul><ul><li>同じ操作を繰り返す </li></ul><ul><li>Vim 内からコマンドを実行 </li></ul><ul><li>キーマップ </li></ul><ul><li>レジスタ </li></ul>
  39. 39. <ul><ul><li>発表は以上です。 ありがとうございました!! </li></ul></ul>

×