103.8基礎
viのノーマルモードで誤って1行削除した。
直前の変更を1回取り消して削除前へ戻す。
押すキーはどれか。
× 不正解
ノーマルモードのuは直前の変更をundoする。ピリオドは変更の反復であり、役割が逆である。
詳細解説
誤り
.直前の変更を繰り返すため、削除をもう一度実行する方向になる。
削除を反復する方向になる。
誤り
Ctrl-g現在のファイル名や位置などの状態を表示する。
ファイルとカーソルの状態表示である。
正しい
u直前の変更を1回取り消す。
正解。直前の削除を取り消す。
誤り
Ctrl-r取り消した変更をやり直すredo操作である。
undoした変更を再適用する。
実際に確かめる
一時的な検証環境で実行できる例です。
printf 'one\ntwo\n' > sample.txt; vim -Nu NONE -n -es sample.txt -c 'normal! dd' -c 'normal! u' -c 'wq'; cat sample.txt期待される結果
one
two理解のポイント
- uはundo
- .は変更の反復
- Ctrl-rはredo
確認時の注意
- 確認環境: Vim 9.x(vi互換操作)
基礎のおさらい
変更単位
uは文字入力や削除など、直前に確定した変更単位を戻す。
保存前の修正
undoは編集中の変更履歴を戻す操作で、保存済みファイルのバックアップ機能ではない。
問題IDKP-103-119
確認環境Vim 9.x(vi互換操作)
最終技術確認2026-08-12
誤り・権利侵害を報告