概要
初心者向けに実践的なvim操作を解説します。
対象
- vim操作に慣れておらず、ターミナル内の操作に不安がある。
- 説明ではなく実際に何を入力して何を押せば良いのか知りたい。
実践内容とvim操作
- 移動:
cd ファイルが置いてあるディレクトリ
- ファイル確認:
cat ファイル名
- ファイル開く:
vim ファイル名
- ファイル編集開始:
i
- ファイル編集終了:
esc
- ファイル保存:
:w
- ファイル閉じる:
:q
1. 移動:cd ファイルが置いてあるディレクトリ
まずは cd
で編集したいファイルの直下へ移動しましょう。
初心者でも cd
は良く使うため、使える人が多いと思います。
MacBook-Air/home: cd directory
MacBook-Air/home/directory:
2. ファイル確認:cat ファイル名
「初心者は不安よな。CATで確認します。」
cat
はファイル名を指定すると中身がババッと表示されます。
MacBook-Air/home/directory: cat hoge.rb
MacBook-Air/home/directory: cat hoge.rb
class hoge
def move
@fuanyona = fuanyona
end
end
「自分は正しいファイルを操作しようとしているか。」
「不安感が強いので99%合ってるけど中身確認したい。」
と思ったときに唱えてあげてください。
3.ファイル開く:vim ファイル名
ファイル編集の前にファイルを開く過程があります。
MacBook-Air/home/directory: vim hoge.rb
MacBook-Air/home/directory: vim hoge.rb
class hoge
def move
@fuanyona = fuanyona
end
end
~
~
~
~
"hoge.rb" 10L, 100B
のような画面になります。
ファイルの中に入った状態で、普段編集しているVS Codeなどのエディタと同じです。
違う点は、vim操作の場合は編集のために追加操作が必要です。
またここからすぐに出たくなった場合は:q
で出れます。
q
の前に:
を入力する必要があるので、忘れずに:q
と打ちましょう。
4.ファイル編集開始:i
ファイルを開いたあとに i
を押すと 下の方に -- INSERT --
が出てきます。
MacBook-Air/home/directory: vim hoge.rb
class hoge
def move
@fuanyona = fuanyona
end
end
~
~
~
~
-- INSERT --
-- INSERT --
が出ると編集できます。
操作性は柔軟ではないのでカーソルの運びに慣れないかもしれません。
編集したい箇所を編集してください。
class hoge
def move
@ugokimasu = ugokimasu
end
end
~
~
~
~
-- INSERT --
-@fuanyona = fuanyona
+@ugokimasu = ugokimasu
のように中身を変えました。
5. ファイル編集終了:esc
i
のあとは esc
、i
のあとは esc
、i
のあとは esc
。
覚えるまで唱えて印象付けましょう。
-- INSERT --
が消えるとOKです。
class hoge
def move
@ugokimasu = ugokimasu
end
end
~
~
~
~
6. ファイル保存::w
class hoge
def move
@ugokimasu = ugokimasu
end
end
~
~
~
~
:w
で Enter
class hoge
def move
@ugokimasu = ugokimasu
end
end
~
~
~
~
"hoge.rb" 10L, 100B written
written
があればOKです。
7. ファイル閉じる::q
class hoge
def move
@ugokimasu = ugokimasu
end
end
~
~
~
~
:q
で Enter
MacBook-Air/home/directory:
これで元の世界に戻ってきます。
最後に再cat
して編集内容が反映されてるか確認。
MacBook-Air/home/directory: cat hoge.rb
MacBook-Air/home/directory: cat hoge.rb
class hoge
def move
@ugokimasu = ugokimasu
end
end
~
~
~
~
"hoge.rb" 10L, 100B
一言
不安な時は、cat
で安心すればいい。