トップ > 初級編 > 画面のスクロール >
文字カーソルを基準としたスクロール

文字カーソルの位置を基準に画面をスクロールする

この記事では、文字カーソルの位置を基準としてスクロールする方法を説明します。

文字カーソルの位置を基準としたスクロールとは、

  1. 文字カーソルの行を最上行にする
  2. 文字カーソルの行を最下行にする

というようなスクロール操作のことです。 『文字カーソルを目的の場所まで移動したが、画面の端に近いため周囲のテキストが見渡せない』というような状況で使います。

なお、この記事でも以下のテキストを例に操作を説明します


  1行目です。
  2行目です。
  3行目です。
  4行目です。
  5行目です。
  6行目です。
  7行目です。
  8行目です。
  9行目です。
 10行目です。

...(中略)...

 91行目です。
 92行目です。
 93行目です。
 94行目です。
 95行目です。
 96行目です。
 97行目です。
 98行目です。
 99行目です。
100行目です。

  
上の掲載は11行目から90行目を省略しています

文字カーソル位置を基準としたスクロール

まずは、文字カーソルの行を最上行にする方法を説明します。 文字カーソルの行を最上行にするには z<Enter> コマンドを使います。

では実際にスクロールしてみましょう。

文字カーソルは50行目の4文字目にある
文字カーソルは50行目の4文字目にある

上図のように文字カーソルは50行目の4文字目にあるものとして解説します。

では、文字カーソルの行が最上行になるようにスクロールしましょう。 キーボードから z<Enter> を入力してください。

z<Enter>
50行目が最上行になるようにスクロール
50行目が最上行になるようにスクロール

上図のように50行目が最上行になるようにスクロールします。 また、文字カーソルは50行目のまま移動していません

ただし、文字カーソルは、行内の空白以外の最初の文字へ移動しています。 z<Enter> コマンドを使ってスクロールすると、このように文字カーソルが行内の空白以外の最初の文字へ移動します

続いては、文字カーソルの行を中間行にするスクロールです。 文字カーソルの行を中間行にするには z.(ピリオド) コマンドを使います。

では、文字カーソルの行が中間行になるようにスクロールします。 キーボードから z. を入力してください。

z.
50行目が中間行になるようにスクロール
50行目が中間行になるようにスクロール

上図のように50行目が中間行になるようにスクロールします。 文字カーソルは引き続き50行目にあります

  
z.(ピリオド) コマンドでも文字カーソルは行内の空白以外の最初の文字へ移動します。

最後に、文字カーソルの行を最下行にするスクロールです。 文字カーソルの行を最下行にするには z-(マイナス) コマンドを使います。

では、文字カーソルの行が最下行になるようにスクロールします。 キーボードから z- を入力してください。

z-
50行目が最下行になるようにスクロール
50行目が最下行になるようにスクロール

上図のように50行目が最下行になるようにスクロールします。 文字カーソルは引き続き50行目のままです

  
z-(マイナス) コマンドでも文字カーソルは行内の空白以外の最初の文字へ移動します。

文字カーソルを移動しないスクロール

この記事で紹介した z<Enter> コマンド、z.(ピリオド) コマンド、z-(マイナス) コマンドは、画面がスクロールするだけでなく文字カーソルまで移動してしまいます。 説明したように、文字カーソルが行内の空白以外の最初の文字へ移動するのです。

オリジナルのviエディタでは使えませんが、Vimでは文字カーソルを移動させないスクロールも可能です。

文字カーソルを移動させずに文字カーソルの行を最上行にするには zt コマンドを使います。

  
zt コマンドは "Top" から連想して覚えましょう。

文字カーソルを移動させずに文字カーソルの行を中間行にするには zz コマンドを使います。

文字カーソルを移動させずに文字カーソルの行を最下行にするには zb コマンドを使います。

  
zb コマンドは "Bottom" から連想して覚えましょう。
ページの先頭へ
 

まとめ

z<Enter> コマンドで、文字カーソルの行が最上行となるようにスクロールすることができます。 また、z.(ピリオド) コマンドでは中間行となるように、z-(マイナス) コマンドでは最下行となるようにスクロールすることができます。 ただし、文字カーソルが行内の空白以外の最初の文字へ移動します。

文字カーソルを移動させたくない場合は、zt コマンドで最上行となるように、zz コマンドで中間行となるように、zb コマンドで最下行となるようにスクロールすることができます。

コマンド 説明
z<Enter> 文字カーソルの行が最上行となるようスクロールする
(文字カーソルは行内の空白以外の最初の文字へ移動する)
z.
(ピリオド)
文字カーソルの行が中間行となるようスクロールする
(文字カーソルは行内の空白以外の最初の文字へ移動する)
z-
(マイナス)
文字カーソルの行が最下行となるようスクロールする
(文字カーソルは行内の空白以外の最初の文字へ移動する)
zt 文字カーソルの行が最上行となるようスクロールする
zz 文字カーソルの行が中間行となるようスクロールする
zb 文字カーソルの行が最下行となるようスクロールする
ページの先頭へ