とらりもん - vim Diff
- Added parts are displayed like this.
- Deleted parts are displayed
like this.
2010/05/30 K. T.
!vimメモ
初心を侮ることなかれ。vimを制するものは、、、、
<dd> 1行切り取り
<ndd> n行切り取り
<yy> 1行コピー
<nyy> n行コピー
<p> 指定行の次の行へ貼り付け
<P> 指定行の前の行へ貼り付け
<^> 文頭へ移動
<$> 文末へ移動
<ctr + d> 下へスクロール
<cdr + u> 上へスクロール
<shift + ↑ or ↓> スクロール
<:w> 保存
<:w ****.csv> 名前をつけて新規保存
<:w!> 上書き保存
<:q> vim 終了
<:q!> 保存せずにvimを終了
<:wq> 保存して終了
!!!置換したい場合
例) aをbに置換する。
<:%s;a;b;gc>
g : 1行に2個以上の場合も置換。c : 置換する際、確認をする。
!vimの真髄(玄人編)※ここまで使えるとVIM使いとして認定される。
* vimには、挿入モードとコマンドモードとヴィジュアルモードの3種類がある。それぞれのモードを使いこなすことにより、すばらしい機能が使えるようになり、windowsのメモ帳や、メール作成で文章を打つのが苦になるだろう。
!!!0.各モードの切り替え方
デフォルトの状態は、コマンドモードである。
* コマンドモード
** Esc をとにかく押すと切り替わるのがコマンドモードである。困ったらEscを押すくらいに思っているとよい。(本当は一回押せばよい)。
** コマンドモードは、非常に沢山の操作が可能である。があまりにも多いのでここでの紹介は省略する。
** コマンドモードでは、キーボードの矢印キーを使うのはスマートではない。h: 左、j: 下、k: 上、l:右 を使って移動を行う。(上達したければとにかくこの方法に従う)
* 挿入モード
** コマンドモードから挿入モードに切り替えるには、i とか a とか o とか O とか色々ある。玄人はこの挿入モードへの入り方にすごく気を使う。
たとえば、
今いる位置から書きはじめたいときは、i
今いる位置より一文字先から書きはじめたいときは、a
今いる行の文末から書きはじめたいときは、A
今いる行より下の行から書きはじめたいときは、o
今いる行より上の行から書きはじめたいときは、O
※なぜこんな面倒なことをするのかについて興味が出た人は、vim使いの1歩目を踏み出したことになる。
* ヴィジュアルモード
** あまり使用したことがない人も多いのがこのモード。このモードを使いこなすと、コピペが楽になる。
** ヴィジュアルモードでも、キーボードの矢印キーを使うのはスマートではない。h: 左、j: 下、k: 上、l:右 を使って移動を行う。(上達したければとにかくこの方法に従う)
** コマンドモードからヴィジュアルモードに入るには、何パターンかある。
vを押すと文字単位で範囲指定可能なヴィジュアルモードに切り替わる。
shift + vを押すと、行単位で指定可能なヴィジュアルモードに切り替わる。
Ctl + v を押すと、矩形単位で範囲指定可能なヴィジュアルモードに切り替わる。
それぞれで範囲指定した後、y によるコピー、dによる切り取りが可能になり、
p を押すと貼り付けができる。
!!1. <Ctl> + wで編集ウィンドウを自在に操れ!
* <Ctl> + w の後に v を押すと、windowが左右に分割される。
* <Ctl> + w の後に s を押すと、windowが上下に分割される。
* <Ctl> + w の後に w を押すと、編集対象のwindowが変わる。
** 各windowを閉じたいときには、編集対象のwindow上でいつもどおり、「:wq」とか「:q!」とかすればよい。
** 各windowごとに別のファイルを開きたい場合、「:edit <ファイル名>」とすれば編集できる。
!!2. 「.」による繰り返し機能を極めろ!
何気なく、挿入モードとコマンドモードを切り替えているが、この切り替えには大きな意味がある。
たとえば、
1. vim を起動する。※コマンドモード
2. iとかを押して、挿入モードに切り替える。
3. 編集が終わったらEscを押して、再びコマンドモードに戻る。
これだけ見るとなんてことはない操作に見える。しかしここで魔法のコマンドを打ってみる。
4. 「. (ドット)」を一回打ってみてほしい。
すると、先ほど挿入モードで実行した結果が繰り返されていることに気づく。(ここで痺れた人はvim使いに2歩近づく)
つまり、コマンドモード -> 挿入モード -> コマンドモードのサイクルでの編集内容を、vimは記憶しており、
「.」を押すことで、まったく同じ編集を実行してくれる。
さらにさらに、「5.」と押してみると、5回同じ編集をしてくれる。
鋭い人は気づいたかもしれないが、コマンドモード -> 挿入モード -> コマンドモードを実現するためには、
挿入モードへの入り方が非常に重要となる。どんな入り方をするかによって、「.」で繰り返される内容が
変わってくるためである。結構慣れが必要なので色々と試してみてほしい。
[[実践Vim 思考のスピードで編集しよう|http://www.amazon.co.jp/%E5%AE%9F%E8%B7%B5Vim-%E6%80%9D%E8%80%83%E3%81%AE%E3%82%B9%E3%83%94%E3%83%BC%E3%83%89%E3%81%A7%E7%B7%A8%E9%9B%86%E3%81%97%E3%82%88%E3%81%86-Drew-Neil/dp/4048916599]]
! その他
* vimがどうしても肌に合わない人は、emacsを試してみるのもよい。vim派とemacs派の戦いには長い歴史がある。どちらが優れているかはわからないが、どちらもすばらしいエディタであることには間違いない。「俺はvim派」とか「私はemacs派」と言えるとちょっとカッコいい。
!vimメモ
初心を侮ることなかれ。vimを制するものは、、、、
<dd> 1行切り取り
<ndd> n行切り取り
<yy> 1行コピー
<nyy> n行コピー
<p> 指定行の次の行へ貼り付け
<P> 指定行の前の行へ貼り付け
<^> 文頭へ移動
<$> 文末へ移動
<ctr + d> 下へスクロール
<cdr + u> 上へスクロール
<shift + ↑ or ↓> スクロール
<:w> 保存
<:w ****.csv> 名前をつけて新規保存
<:w!> 上書き保存
<:q> vim 終了
<:q!> 保存せずにvimを終了
<:wq> 保存して終了
!!!置換したい場合
例) aをbに置換する。
<:%s;a;b;gc>
g : 1行に2個以上の場合も置換。c : 置換する際、確認をする。
!vimの真髄(玄人編)※ここまで使えるとVIM使いとして認定される。
* vimには、挿入モードとコマンドモードとヴィジュアルモードの3種類がある。それぞれのモードを使いこなすことにより、すばらしい機能が使えるようになり、windowsのメモ帳や、メール作成で文章を打つのが苦になるだろう。
!!!0.各モードの切り替え方
デフォルトの状態は、コマンドモードである。
* コマンドモード
** Esc をとにかく押すと切り替わるのがコマンドモードである。困ったらEscを押すくらいに思っているとよい。(本当は一回押せばよい)。
** コマンドモードは、非常に沢山の操作が可能である。があまりにも多いのでここでの紹介は省略する。
** コマンドモードでは、キーボードの矢印キーを使うのはスマートではない。h: 左、j: 下、k: 上、l:右 を使って移動を行う。(上達したければとにかくこの方法に従う)
* 挿入モード
** コマンドモードから挿入モードに切り替えるには、i とか a とか o とか O とか色々ある。玄人はこの挿入モードへの入り方にすごく気を使う。
たとえば、
今いる位置から書きはじめたいときは、i
今いる位置より一文字先から書きはじめたいときは、a
今いる行の文末から書きはじめたいときは、A
今いる行より下の行から書きはじめたいときは、o
今いる行より上の行から書きはじめたいときは、O
※なぜこんな面倒なことをするのかについて興味が出た人は、vim使いの1歩目を踏み出したことになる。
* ヴィジュアルモード
** あまり使用したことがない人も多いのがこのモード。このモードを使いこなすと、コピペが楽になる。
** ヴィジュアルモードでも、キーボードの矢印キーを使うのはスマートではない。h: 左、j: 下、k: 上、l:右 を使って移動を行う。(上達したければとにかくこの方法に従う)
** コマンドモードからヴィジュアルモードに入るには、何パターンかある。
vを押すと文字単位で範囲指定可能なヴィジュアルモードに切り替わる。
shift + vを押すと、行単位で指定可能なヴィジュアルモードに切り替わる。
Ctl + v を押すと、矩形単位で範囲指定可能なヴィジュアルモードに切り替わる。
それぞれで範囲指定した後、y によるコピー、dによる切り取りが可能になり、
p を押すと貼り付けができる。
!!1. <Ctl> + wで編集ウィンドウを自在に操れ!
* <Ctl> + w の後に v を押すと、windowが左右に分割される。
* <Ctl> + w の後に s を押すと、windowが上下に分割される。
* <Ctl> + w の後に w を押すと、編集対象のwindowが変わる。
** 各windowを閉じたいときには、編集対象のwindow上でいつもどおり、「:wq」とか「:q!」とかすればよい。
** 各windowごとに別のファイルを開きたい場合、「:edit <ファイル名>」とすれば編集できる。
!!2. 「.」による繰り返し機能を極めろ!
何気なく、挿入モードとコマンドモードを切り替えているが、この切り替えには大きな意味がある。
たとえば、
1. vim を起動する。※コマンドモード
2. iとかを押して、挿入モードに切り替える。
3. 編集が終わったらEscを押して、再びコマンドモードに戻る。
これだけ見るとなんてことはない操作に見える。しかしここで魔法のコマンドを打ってみる。
4. 「. (ドット)」を一回打ってみてほしい。
すると、先ほど挿入モードで実行した結果が繰り返されていることに気づく。(ここで痺れた人はvim使いに2歩近づく)
つまり、コマンドモード -> 挿入モード -> コマンドモードのサイクルでの編集内容を、vimは記憶しており、
「.」を押すことで、まったく同じ編集を実行してくれる。
さらにさらに、「5.」と押してみると、5回同じ編集をしてくれる。
鋭い人は気づいたかもしれないが、コマンドモード -> 挿入モード -> コマンドモードを実現するためには、
挿入モードへの入り方が非常に重要となる。どんな入り方をするかによって、「.」で繰り返される内容が
変わってくるためである。結構慣れが必要なので色々と試してみてほしい。
[[実践Vim 思考のスピードで編集しよう|http://www.amazon.co.jp/%E5%AE%9F%E8%B7%B5Vim-%E6%80%9D%E8%80%83%E3%81%AE%E3%82%B9%E3%83%94%E3%83%BC%E3%83%89%E3%81%A7%E7%B7%A8%E9%9B%86%E3%81%97%E3%82%88%E3%81%86-Drew-Neil/dp/4048916599]]
! その他
* vimがどうしても肌に合わない人は、emacsを試してみるのもよい。vim派とemacs派の戦いには長い歴史がある。どちらが優れているかはわからないが、どちらもすばらしいエディタであることには間違いない。「俺はvim派」とか「私はemacs派」と言えるとちょっとカッコいい。