いろいろ備忘録日記

主に .NET とか Go とか Python絡みのメモを公開しています。

vimの3つのビジュアルモード開始コマンドとoコマンド

概要

vimのビジュアルモードの操作方法について、忘れないうちにメモメモ。

最近、久しぶりに vim 使っているのですが、やっぱりこのエディタは楽しいですね。

chromebookで遊んでいます。使っているバージョンは以下でした。

$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 10 (buster)
Release:        10
Codename:       buster
$ vim --version | head -n 1
VIM - Vi IMproved 8.1 (2018 May 18, compiled Jun 15 2019 16:41:15)

vim 8.1 から :terminal が使えるようになってるので、本当に便利になりましたね。

3つのビジュアルモード

情けないことに私は、ビジュアルモードの入り方を v コマンドしか知りませんでした。

実際は3つもあるんですね。

:h visual-mode

で確認したら一番最初に書いてありましたw ヘルプはちゃんと読むべきですね。

  • v コマンド
    • 文字単位の選択
  • V コマンド
    • 行単位の選択
  • Ctrl-v コマンド
    • ブロック選択(矩形選択)

行単位の選択めっちゃ便利!

V で行選択モードにいる状態で、v を押すと文字選択モードになります。

逆もしかり。いつでもモード切り替え可能。

ビジュアルモード中の o コマンド

これがメモしたかった本題。

ビジュアルモード中に o を押下すると、選択しているエリアの 始点終点 が入れ替わります。

例えば、選択している最中に「あ、最初の位置ちょっと手前だった・・・・」ってなったりしませんか?(私はよくなりますw

でも、結構選択しちゃっている後とかに、気づくと今では仕方ない・・って思って選択解除して再度始点位置まで戻ってやり直したりしてました。

こんな時に、o 押すと始点と終点が入れ替わるので元々始点だった位置が終点に変わります。なので、動かせます。

調整し終わった後で、再度 o を押すと、元に戻ります。


過去の記事については、以下のページからご参照下さい。

  • いろいろ備忘録日記まとめ

devlights.github.io

サンプルコードは、以下の場所で公開しています。

  • いろいろ備忘録日記サンプルソース置き場

github.com

github.com

github.com