Vim 사용법

vim에서

==================맨 처음 vim 시작할 때 ====================

->window에서 vi를 실행한다

-> shift + : 를 누르고 w 파일이름.확장자를 입력한다

-> 지정되어 있던 경로에 파일이 저장된다.

=================================================

===================== vi 줄번호 보이기 ===============

  1. shift + :
  2. set number 입력

숨길 때는 set nonumber 입력 ===> 그냥 : 눌러서 되는 경우는 :를 누르면 되지만 그냥 : 눌러서 안되면 shift + : 로 shift를 같이 누르면 된다.

====================================================

===================== 화면 분할하기 ====================

  1. 수직으로 분할하면서 새로운 파일 열기
    • shift + :
    • vs 경로 파일명.확장자
  2. 분할 창으로 커서 이동(명령모드에서 진행할 것)
    • ctrl +w, w ==> 다음 창으로 커서 이동
    • ctrl +w, W ==> 이전 창으로 커서 이동 (창이 2개밖에 없을시 ctrl +w, w로도 왔다 갔다 할 수 있다)

======================= ««<명령모드>>>>> ===================

  1. 빈화면에 커서가 깜박깜박 거리고 있으면 명령모드라는 소리. 사용자의 입력이 적히지 않는다.

  2. 입력모드에서 명령모드로 와야 커서도 옮기고 각종 작업을 할 수 있다. 입력모드에서 명령모드로 바꿀 때는 ESC키를 누르면 된다. 명령모드로 바뀌면 좌측하단에 있는 insert 혹은 끼워넣기가 없어진다

================= 커서 움직이는 방법 ================

  1. h는 왼쪽 L은 오른쪽 J는 아래쪽 K는 위쪽이다. ==> 오른손으로 작동하면 된다. (왼쪽-아래-위쪽-오른쪽)

  2. 현재 커서 위치에서 가장 끝으로 옮기는 방법 : shift + $

  3. 현재 커서 위치에서 제일 앞으로 옮기는 방법 : shift + ^

==================== 커서 단어 단위로 움직이는 방법 =============

w: 단어의 시작 위치로 커서 이동 (forward 방향) Ex. 3w: 세 단어 앞으로 커서 이동 e: 단어의 마지막 위치로 커서 이동 (forward 방향) b: 단어의 시작 위치로 커서 이동 (backward 방향) ge: 단어의 마지막 위치로 커서 이동 (backward 방향)

========================================

================== 복사/붙여넣기 ====================

  1. 마우스 드래그 같이 여러줄 선택(비주얼 라인) : shift + v

  2. 비주얼 라인한거 복사 하기 : y

2-1. 한 라인만 복사하기(현재 커서 위치 기준) : yy

2-2 커서기준 n개의 줄 복사 : 숫자 입력 + yy

  1. 복사한거 붙여넣기 : p (이건 명령모드에서 실행해야 한다)

  2. 비주얼 라인한거 지우기 : 비주얼 라인(shift + v)잡고 d 키누르기

4-1 커서 위치 기준으로 한 줄만 지우기 : dd

4-2 n개의 줄을 지우기 : 숫자 입력 + dd 예를들어 2 누르고 dd 하면 커서기준으로 2줄이 지워진다.

4-3 커서 깜박이는 위치 뒤에 있는 글자 지우기 : shift + d

4-4 커서 깜박이는 위치 기준 한 글자식 지우기 : x

4-5 n개의 글자 지우기 : 숫자키 + x (6 누르고 x 누르면 6글자가 지워진다)

  1. 현재 vi로 열고 있는 파일 말고 외부에서 ctrl + c 혹은 마우스로 copy 한거 붙여 넣기(ctrl + v 키랑 같은 역할)
  • shift + insert(ins라고 키보드에 표시)
  1. 코드를 줄 맞춰서 복사하기
  • shift + : set paste 입력
  • i키 눌러서 insert 모드 진입. 왼쪽 하단에 insert(paste)라고 적힌거 확인
  • shift + insert 누르면 원래 복사 해뒀던 그대로 붙여넣기가 된다.
  • ESC 눌러서 입력모드에서 빠져나온 후
  • shift + : set nopaste 입력해서 paste 모드 빠져나오기

========================================

===================== 복사 붙인거 정렬하기 =============

  1. shift + v 눌러서 밑줄로 선택한 후에 = 키 누르면 들여쓰기 맞춰준다

  2. 중괄호 { 위에서 % 누르면 들여쓰기 맞춰준다.

========================================

======================= 라인 이동 ===================

  1. 화면에서 보여주고 있는 라인 다음라인으로 이동 : ctrl + f

  2. 이전 화면으로 돌아가고 싶을 떄 : ctrl + b

  3. 커서 현재 위치 기준 한줄 밑 라인을 커서가 있는 라인으로 옮길 때 : shift + j

  4. 원하는 라인으로 바로 이동할 때 : shift + : (원하는 라인 숫자) -> 예를 들어 70 치면 70번째 라인으로 이동한다.

  5. 가장 끝 라인으로 이동할 때 : shift + : $ 입력

========================================

====================== 단어(문자열) 찾기 ====================

  1. 커서가 깜박이는 위치에 있는 문자열 찾기 : shift + 숫자키 8 ( * 입력)

1-1. 찾은 문자열 아래로 이동하는 방법 : n키 누르기

1-2 찾은 문자열 위로 이동하는 방법 : shift + n키 (대문자 N) -> 문자열 중 현재 커서가 있는 문자열에서 깜박거림을 확인할 수 있다.

  1. 명령모드에서 / 를 누른 후(라인모드 진입) 내가 찾고 싶은 단어 입력하기

========================================

================== 되돌리기 ======================

  1. 키보드 u를 누르면 undo ctrl + z 같은 효과가 있다.

  2. undo 한 걸 다시 복원 시키는 redo : ctrl + r

========================================

================ 문자열 한 번에 교체 ==============

  1. shift + :
  2. %s/찾을 문자열/바꿀문자열

========================================

=============== 다른 파일 불러오기 ================

현재 커서 위치에 다른 파일 내용 불러오기

  1. shift + :
  2. r 파일명.확장자

========================================

============ 그밖의 명령어 ==================

  1. shift + : w ==> 저장하기

  2. shift + : wq ==> 저장하고 vim 나가기

  3. shift + : w 경로 파일이름.확장자 ==> 원하는 위치에 파일 저장

  4. shift + : q! ==> 저장 안하고 나가기

===========================================

========= < 명령모드에서 입력모드로 넘어올 때 > ===========

  1. 명령모드에서 입력모드로 바꾸는 방법 -> 왼쪽하단에 insert 혹은 끼워넣기라고 뜬다

1) i 키 : 지금 커서 위치에서 쓰기가 시작된다

2) a 키 : 지금 커서 다음 위치에서 쓰기가 시작된다.

3) o키 : 현재 커서 위치에서 한라인 밑으로 내려가면서 새로 쓸 수 있다.

4) s키 : 현재 커서 위치의 한 글자를 지우고 입력

5) shift + i : 현재 커서 줄의 맨 앞으로 가면서 새로 쓸 수 있다.

6) shift + a : 현재 커서 줄의 제일 뒤로 가면서 새로 쓸 수 있다.

7) shift + o : 현재 커서의 이전 줄에 입력

8) shift + s : 현재 커서의 한 줄을 지우고 입력

9) cw : 현재 커서가 가리키고 있는 단어를 지우고 그 자리에 쓸 수 있다.

== 주의 현재 키보드가 한글 입력으로 되어 있을 시 키가 먹지 않는다. ==

================================================

출처: https://www.youtube.com/watch?v=GWo_MxMlJJ4&t=843s https://gmlwjd9405.github.io/2019/05/14/vim-shortkey.html