

vimを使って移動したいけど、画面単位、単語単位での移動方法を忘れちゃったなあ。という時のために、基礎的な移動方法を紹介します。
ボクはプログラミング学習をはじめて約1年。普段は普通のテキストエディタを使っているけれど、unix系のパワフルなエディタであるvimを使いこなせたら、かなりカッコいいなと思って、vimの使い方も勉強をしています。
プログラミングが出てきたりする海外ドラマ、「シリコンバレー」にもvimが出てきたりして、海外でもプログラマーならvimでしょみたいなこだわりがあってボクはvimに憧れています。
この記事でvimで良く使うであろう移動方法がわかります。
それでは、早速移動方法をご紹介します。
ここでは、macを使っていることを前提で記事を書いています。
まずvimで適当にファイルを開きましょう。
vimでファイルを開く
ターミナルを開いて、開きたいファイルがあるフォルダまでcdコマンドで移動します。
そして、ファイルを「vim + ファイル名」で開きます。

開いてファイルの内容が表示されたら移動の準備は完了です。

vimの移動方法
まずノーマルモードにしておきます。
モードにはノーマルモード、編集モード、コマンドモード、ヴィジュアルモードがあります。
編集モード
iを押すと編集モードでinsertとファイル下部に表示され入力ができる状態になります。
コマンドモード
:を押すとコマンドモードになって、保存やファイルを終了したりできるモードになります。
ヴィジュアルモード
vを押すとヴィジュアルモードになって、カーソルで複数の文字を選択できる状態になります。コピペの際の選択。
ノーマルモード
ノーマルモードは、カーソル移動やページ移動の際に使います。
ファイルを開いてすぐは、ノーマルモードです。
注意が必要なのが、開いてすぐの状態で日本語を入力する「かなモード」になっていると、ノーマルモードで使いたいキーを押してもその文字が入力されてしまいますので、英数キーを押して英数モードにしておきます。
編集のinsertモード、ヴィジュアルモード等、ノーマルモード以外からノーマルモードにするには、
escキーを押すとノーマルモードになります。
ノーマルモードになっていることを確認したら移動してみましょう。
ファイルの末尾と先頭に一瞬にカーソル移動
大文字の「G」を押すと、ファイルの一番末尾にカーソルが移動します。

小文字で「gg」を押すと、ファイルの先頭にカーソルが移動します。

G、ggでファイルの末尾と先頭に一瞬で移動でき、便利ですね。
画面単位での移動
次は、画面単位での移動をしてみましょう。ターミナルで見える範囲が1つのページとして扱われます。
「control + f 」キーを押すと、1画面下のページにカーソルが移動します。
「control + b 」キーを押すと、1画面上のページにカーソルが戻ります。
これも覚えておくと便利ですね。
まずはカーソルの一番基本的な動かし方をみてみましょう
「 h 」キーで1文字分左にカーソルが移動します。
「 j 」キーで1行分下にカーソルが移動します。
「 k 」キーで1行分上にカーソルが移動します。
「 l 」(エル)キーで1文字分右にカーソルが移動します。
hjklキーは、キーボードで横並びになっているので、覚えやすいですね。
次は、単語単位の移動方法をみてみましょう
「 w 」キーで1単語づつ右にカーソルが移動します。
「 b 」キーで1単語づつ左にカーソルが移動します。
単語単位でカーソルを移動できるので、これも覚えておくと便利かと思います。
wキーを使った例:
!DOCTYPEの「 D 」にカーソルがあります。

ここで「 w 」キーを押すと、!DOCTYPEの次の単語である「 html 」の「 h 」にカーソルが移動します。

行末、行頭に一気にカーソル移動する方法
「 $ 」キーを押すと、行末
「 ^ 」(キャレット)キーを押すと、行頭
例をみてみましょう。
「 $ 」キーを押すと、行末にカーソルが移動します。

ここでは行末の「 > 」にカーソルが移動しています。
「 ^ 」(キャレット)キーを押すと、行頭にカーソルが移動します。

ここでは行末にカーソルがあった状態から行頭に移動し、「 < 」にカーソルが移動しているのがわかります。
行の中で、特定の文字の所にカーソルを一気に移動する
「 f + 文字 」でカーソルを一気に移動
複数同じ文字があるときは、
「 f + 文字 + ; 」で同じ次の文字に移動。
「 f + 文字 」でカーソルを一気に移動してみます。

ここでは、「 f + C 」で「 < !DOCTYPE html> 」の「 C 」にカーソルが移動しました。
「 f + 文字 + ; 」で同じ文字が複数ある時の次の文字に移動してみます。

まず、「 e 」が複数ある行で、「 f + e 」で最初の「 e 」に移動しました。
次の「 e 」に移動するには、「 ; 」キーを押せば次の「 e 」に移動できます。

以上がvimの移動方法となります。実際に手を動かしつつ動作を確認することで、自然と覚えてくると思います。ボクもまだまだ慣らしている身です。積極的に使ってカッコいいvimを使いこなして行きたいですね。
コメント