Vim – 編集履歴のUndo(元に戻す)とRedo(やり直す)【回数の設定も】

midSun31midSun31
IT・デジタル

一つ目の編集をさっと元に戻したり、やり直したりする機能はエディタの欠かせない機能です。VimエディタにもUndoとRedoの機能があります。

この記事では、Vimで編集履歴のUndo(元に戻す)とRedo(やり直す)のやり方についてご紹介していきます。

編集履歴の回数の上限設定も合わせて紹介するので参考にしてみて下さい。Vimエディタのバージョンは8.1を利用しています。

Undo(元に戻す)のやり方

VimエディタでUndoを行って編集内容を元に戻すには、ノーマルモードで「u」キーを入力します。

キーを入力すると以下のように1つ前の編集内容が巻き戻されます。

「u」キーを連続で入力すると、2つ前、3つ前と編集内容を戻すことができます。

インサートモードでの編集は「Esc」キーで抜けるまでを1つの編集としてカウントするので注意しましょう。

Redo(やり直し)のやり方

VimエディタでRedoを行って編集内容を再度追加するには、ノーマルモードで「Crtl」+「r」キーを入力します。

キーを入力すると以下のように編集内容をもう一度反映させることができます。

回数の上限設定の変更方法

編集履歴をUndoができる回数は「undolevels」で制限されています。デフォルトは、「1000回」に設定されています。

編集履歴の上限を変更するには、次のコマンドで設定します。

:set ul=上限数

上限数の設定は、次の数値の場合は特殊な設定になります。

  • undolevelsを「-1」にした場合
    • Undo機能が無効になります。
  • undolevelsを「0」にした場合
    • Linuxなどにデフォルトで入っているviエディタのUndo機能と互換性があるモードになります。
    • すなわちUndo可能回数は1回のみで、2回目に「u」キーを入力するとRedoが実行(Undoが取消)されます。

デフォルトの設定を変更する場合

デフォルトの編集履歴の上限数を変更したい場合は、設定ファイルのvimrcに次のコマンドを追記します。

set ul=上限数

vimrcの編集方法については、『Vimの設定ファイル「vimrc」を編集して設定を変更する方法』を参考にして下さい。

以上、編集履歴のUndo(元に戻す)とRedo(やり直す)方法でした。

IT・デジタル
Howpon[ハウポン]

コメント