Quantcast
Channel: Vimタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 5608

vimのノーマルモードのコマンドまとめ(その3)

$
0
0

vimのノーマルモードのコマンドまとめ(その1)の続き
Ctrl + w,[,]打鍵が必要なノーマルモードのコマンドのまとめ

version

vim 7.4.2210

^wの機能

ウィンドウサイズ変更
ウィンドウの配置を変更する
ウィンドウ間でカーソルの移動を行う
ウィンドウを開く/閉じる
カーソル位置のタグ名/ファイル名を開く

[ ]の機能

キー動作キー動作
cdiffの差分の移動d(C言語等の)マクロ定義の表示
fファイルを開く※gfと同じiキーワードを表示
mメソッドの{}に移動pインデント調整して貼り付け
sスペルミスの単語に移動z折り畳みの先頭/末尾に移動
'マーク位置の行先頭へ移動*C言語のコメントの始まり/終わりに移動
( )(,)へ移動`マーク位置へ移動
/C言語のコメントの始まり/終わりに移動{ }{,}へ移動
[ ]セクション移動##if #else #endif の間を移動

Index

^w

| ^wb ^w^b | ^wc ^w^c | ^wd ^w^d | ^wf ^w^f | ^wF | ^wgF | ^wgf | ^wg] | ^wg} |
| ^wh ^w^h | ^wH | ^wi ^w^i | ^wj ^w^j | ^wJ | ^wk ^w^k | ^wK | ^wl ^w^l | ^wL |
| ^wn ^w^n | ^wo ^w^o | ^wp ^w^p | ^wP | ^wq ^w^q | ^wr ^w^r | ^wR | ^ws ^w^s | ^wS |
| ^wt ^w^t | ^wT | ^wv ^w^v | ^ww ^w^w | ^wW | ^wx ^w^x | ^wz ^w^z |
| ^w+ | ^w- | ^w< | ^w= | ^w> | ^w| | ^w] ^w^] | ^w^ ^w^^ | ^w_ ^w^_ | ^w} |
| ^w<Down> | ^w<Left> | ^w<Right> | ^w<Up>

[ ]

| [c ]c | [d ]d [D ]D [^d ]^d | [f ]f | [i ]i [I ]I [^i ]^i |
| [m ]m [M ]M | [p ]p [P ]P | [s ]s [S ]S | [z ]z |
| [' ]' | [* ]* | [( ]) | [` ]` | [/ ]/ | [{ ]} |
| ]] ][ [[ [] | ]# [# |

ウィンドウサイズ変更

以下キーで操作

^w= ^w+ ^w- ^w> ^w< ^w_ ^w^_ ^w|

^w=

全てのウィンドウの高さと幅の大きさをほぼ同じにする

^w+ ^w- ^w> ^w< ^w_ ^w^_ ^w|

以下表に従い、カレントウィンドウのサイズを変更する

キー方向説明
^w+高+1カレントウィンドウを1行分高くする
^w-高-1カレントウィンドウを1行分低くする
^w_高+Maxカレントウィンドウの高さを可能な限り高くする
^w^_高+Max^w_と同じ
^w>幅+1カレントウィンドウを1桁分広くする
^w<幅-1カレントウィンドウを1行分狭くする
^w|幅+Maxカレントウィンドウの幅を可能な限り広くする

Indexへ

ウィンドウの配置を変更する

以下キーで操作

^wr ^w^r ^wx ^w^x ^wR ^wK ^wJ ^wH ^wL ^wT

動作は下記表を参照

キー動作説明
^wr右/下回転同じ段/列のウィンドウの位置を右/下に1回転し、再配置する
^w^r右/下回転^wrと同じ
^wR左/上回転同じ段/列のウィンドウの位置を左/上に1回転し、再配置する
^wx交換カレントウィンドウと次のウィンドウの配置を入れ替える
※次のウィンドウがない場合は前のウィンドウ
^w^x交換^wxと同じ
^wK最上段カレントウィンドウを最上段に再配置し、幅を最大にする
^wJ最下段カレントウィンドウを最下段に再配置し、幅を最大にする
^wH最左列カレントウィンドウを最左列に再配置し、高さを最大にする
^wL最右列カレントウィンドウを最右列に再配置し、高さを最大にする
^wT新規タブ新規タブを開き、カレントウィンドウをそこに配置する

Indexへ

ウィンドウ間でカーソルの移動を行う

以下キーで操作

^wh ^w^h ^w<Left> ^wj ^w^j ^w<Down>
^wk ^w^k ^w<Up> ^wl ^w^l ^w<Right>
^ww ^w^w ^wW ^wt ^w^t ^wb ^w^b ^wp ^w^p ^w^P

動作は下記表を参照

キー位置説明
^wh ^w^h ^w<Left>左のウィンドウにカーソルを移動
^wj ^w^j ^w<Down>下のウィンドウにカーソルを移動
^wk ^w^k ^w<Up>上のウィンドウにカーソルを移動
^wl ^w^l ^w<Right>右のウィンドウにカーソルを移動
^ww ^w^w次のウィンドウにカーソルを移動
^wW前のウィンドウにカーソルを移動
^wt ^w^t最初一番左上のウィンドウにカーソルを移動
^wb ^w^b最後一番右下のウィンドウにカーソルを移動
^wp ^w^p直前直前のウィンドウにカーソルを移動
^wP-プレビューウィンドウにカーソルを移動

Indexへ

ウィンドウを開く/閉じる

以下キーで操作

^ws ^w^s ^wS ^wv ^w^v ^wn ^w^n ^w^ ^w^^
^wc ^w^c ^wq ^w^q ^wo ^w^o ^wz ^w^z

動作は下記表を参照

キー概要詳細
^ws ^w^s ^wS横分割カレントウィンドウを横に分割
^wv ^w^v縦分割カレントウィンドウを縦に分割
^wn ^w^n新規新規ウィンドウを開く
^w^ ^w^^前を開く直前のバッファを新規ウィンドウで開く
:sp #と同じ
^wc ^w^c閉じるカレントウィンドウを閉じる
^wq ^w^q終了カレントウィンドウを終了する(:quitと同じ)
^wo ^w^o他を閉じるカレントウィンドウ以外を全て閉じる(:onlyと同じ)
^wz ^w^zプレビューを閉じるプレビューウィンドウを閉じる

補足

  • ^w^c^cのキーバインドが「中断」だと使えない
  • 閉じる処理(^wc ^wo)に関し、hiddenオプションがonの場合、閉じたファイルは隠れバッファとなる

Indexへ

カーソル位置のタグ名/ファイル名を開く

以下キーで操作

^w] ^w^] ^wg] ^wf ^w^f ^wF ^wgf ^wgF
^wd ^w^d ^wi ^w^i ^w} ^wg}

動作は下記表を参照

キー動作
^w] ^w^]カーソル配下の宣言元を新規ウィンドウで開く
^wg]カーソル配下の宣言元を新規ウィンドウで開く
^wf ^w^fカーソル配下のファイルを新規ウィンドウで開く
^wFカーソル配下のファイルを新規ウィンドウで開く
[^w}カーソル配下の宣言元をプレビューウィンドウで開く
[^wg}カーソル配下の宣言元をプレビューウィンドウで開く
^wgfカーソル配下のファイルを新規タブで開く
^wgFカーソル配下のファイルを新規タブで開く
^wd ^w^dカーソル配下のキーワードを含むマクロ定義を
新規ウィンドウで開く
^wi ^w^iカーソル配下のキーワードの最初の1行目に移動して、
新規ウィンドウを開く

Indexへ



[c ]c

diff差分の前/次に移動する

Indexへ

[d ]d [D ]D [^d ]^d

[d

カーソル下のマクロをファイルの先頭から検索して、定義を表示

]d

カーソル下のマクロを現在位置から検索して、定義を表示

[D

カーソル下のマクロをファイルの先頭から検索して、ファイル名、行番号、定義内容を表示

]D

カーソル下のマクロを現在位置から検索して、ファイル名、行番号、定義内容を表示

[^d

カーソル下のマクロをファイルの先頭から検索して、マクロの定義位置にジャンプする

]^d

カーソル下のマクロを現在位置から検索して、マクロの定義位置にジャンプする

注意
ここでいうマクロはC言語等で扱うマクロのことを指す

Indexへ

[f ]f

カーソル配下もしくは後ろにあるパスを開く
例えば)
tmp.txt 2なら./tmp.txtを開く
gfと同じ。非推奨

Indexへ

[i ]i [I ]I [^i ]^i

[i

カーソル下のキーワードをファイルの先頭から検索して、キーワードを含む1行を表示

]i

カーソル下のキーワードを現在位置から検索して、キーワードを含む1行を表示

[I

カーソル下のキーワードをファイルの先頭から検索して、キーワードを含む1行とファイル名、行番号を表示

]I

カーソル下のキーワードを現在位置から検索して、キーワードを含む1行とファイル名、行番号を表示

[^i

カーソル下のキーワードをファイルの先頭から検索して、キーワードを含む1行にジャンプする

]^i

カーソル下のキーワードを現在位置から検索して、キーワードを含む1行にジャンプする

補足

検索にて、コメント文とみなした行は無視する

# 以下vim helpからcommentsの説明を引用
'comments' 'com'    文字列   (既定では
                "s1:/*,mb:*,ex:*/,://,b:#,:%,:XCOMM,n:>,fb:-")
            バッファについてローカル

Indexへ

[m ]m [M ]M

[m ]m

前/次のメソッドの初めの{に移動する。前/次のメソッドがない場合はクラスの初め/終わりに移動する

[M ]M

前/次のメソッドの終わりの}に移動する。前/次のメソッドがない場合はクラスの初め/終わりに移動する

Indexへ

[p ]p [P ]P

]p

インデント調整して、後ろに貼り付け

[p ]p [P ]P

インデント調整して、前に貼り付け

補足

  • インデント調整する点を除き、p Pと同じ動作
  • 貼り付け内容が一行以下の場合はインデント調整しない

Indexへ

[s ]s [S ]S

以下の表に従い、スペルミスの単語の前/次へ移動する

キー方向動作
[s次のスペルミスの単語へ移動。
]s前のスペルミスの単語へ移動。行をまたぐ単語は認識しない
[S次のスペルミスの単語へ移動。他地域、まれな単語へ移動しない
]S前のスペルミスの単語へ移動。他地域、まれな単語へ移動しない

補足

該当機能使用のため:set spellの実行が必要

Indexへ

[z ]z

現在開いている折り畳みの先頭([z)/末尾(]z)に移動する。
すでに先頭([z)/末尾(]z)にいる場合は外側の折り畳みの
先頭([z)/末尾(]z)に移動する

Indexへ

[' ]'

カーソル位置より一番近い前/次の小文字のマークがある行の最初の非空白文字へ移動

参考
vimのノーマルコマンドまとめ(その1)-m

Indexへ

[* ]*

前/次のCコメントの始まり/終わりに移動する
※1.Cコメントの始まり/終わりは/* */を指す
※2. [/ ]/と同じ

Indexへ

[( ])

[(

カーソルから前の位置にあるマッチがない(へ移動する

])

カーソルから後ろの位置にあるマッチがない)へ移動する

Indexへ

[` ]`

カーソル位置より一番近い前/次の小文字のマーク位置へ移動

参考
vimのノーマルコマンドまとめ(その1)-m

Indexへ

[/ ]/

前/次のCコメントの始まり/終わりに移動する
※1.Cコメントの始まり/終わりは/* */を指す
※2. [* ]*と同じ

Indexへ

[{ ]}

[{

カーソルから前の位置にあるマッチがない{へ移動する

]}

カーソルから後ろの位置にあるマッチがない}へ移動する

Indexへ

]] ][ [[ []

]]

セクション前方、もしくは{ではじまる次の場所に移動する

][

セクション前方、もしくは}ではじまる次の場所に移動する

[[

セクション後方、もしくは{ではじまる次の場所に移動する

[]

セクション後方、もしくは}ではじまる次の場所に移動する

補足

セクションはsectionsオプションで定義することができる。
値はnroff(Unixで使用している画面整形システム)のマクロで定義する。
例えば、既定値のSHNHH HUnhsh.SH.NH.H.HU.nh.shを表す。
参考

Indexへ

]# [#

#if #else #endif の間を行き来する

補足

C言語等の「#if #else #endif」移動のための専用コマンド

Indexへ


Viewing all articles
Browse latest Browse all 5608

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>