vim 에디터 사용하기

0

VIM

목록 보기
1/1

본 포스트는 '김왼손의 왼손코딩'을 정리한 글 입니다.
https://www.youtube.com/watch?v=Oj0if8rL-wo&list=PLGPF8gvWLYyrmWBOzypMlVgWKfqTzYvgQ&index=1

1. 저장, 종료하기 명령어

  • 저장하기
:w
  • 저장하지않고 종료하기
:q
  • 저장하지않고 강제 종료하기
:q!

느낌표는 강제로 종료한다는 느낌이다.

  • 저장하고 종료하기
:wq

2. 상하좌우 커서 이동하기

좌하상우 hjkl 로 이동한다. 물론 방향키를 써도되는데 손목을 위해서, 해피해킹(?)을 위해서 다음을 쓰는 것이 좋다.

k
  • 아래
j
  • 왼쪽
h
  • 오른쪽
l
  • 앞에 숫자를 넣고쓰면 그 숫자만큼 이동한다. 가령 오른쪽으로 3칸 가겠다면
3l

로 쓰면 된다.

3. 단어 단위로 커서 이동하기

  • 단어 단위로 이동(점프)는 w를 쓰면된다.
w

다음 단어의 맨 처음 글자로 이동하는 것을 볼 수 있다.

  • 역 방향으로 단어 이동(점프)하기
b
  • 정 방향으로 단어 이동하지만 다음 단어의 맨 마지막가기
e

그런데 점프하는 것을 확인해보면 알듯이 점프를 할 때 특수문자(" / [] ' 등등)도 문자로 취급하여 얼마 이동하지 않는 것을 확인할 수 있다.
대문자 W, B, E로 이동하면 이러한 문제를 해결할 수 있다.

  • 공백 단위로 정방향으로 이동하기
W

4. 문장 단위로 커서 이동하기

한 문장은 하나의 줄로 생각하면 된다.

  • 한 문장의 맨 앞으로 가기, 단 문장의 첫 번째 글자가 공백이면 공백으로 간다.
0
  • 한 문장의 맨 앞으로 가기, 단 문장의 첫 번째 글자가 공백이여도 글자로 간다.
^
  • 한 문장의 맨 뒤로 가기
$
  • 한 문장에서 해당하는 문자나 숫자로 가는 방법(가장 처음에 나온 문자를 찾아준다.)
f + 원하는문자또는숫자

단 대문자 소문자 구분을 한다.

  • 직전에 했던 명령어 사용
;
  • 한 문장에서 내가 찾던 문자 바로 전으로 가는 방법
t + 원하는문자또는숫자
  • 뒤로 가는 방법, 위의 명령어를 대문자로 쓰면된다.

5. 단어 검색하기

슬래쉬(/)를 누르고 단어를 입력하면 된다.

/찾고자하는단어

이렇게 되면 "찾고자하는단어"의 모든 단어를 검색하게 되는데, 여기서 n을 누르면 다음으로 넘어간다. 대문자 N을 누르면 반대 방향으로 간다.

하이라이트된 부분을 제거하고 싶다면

/asdf

그냥 안쓰는 단어를 검색해서 노란색 단어 표시를 없앤다.

  • 커서에 있는 단어를 검색하고 싶을 때, 해당 단어로 가서 다음을 눌러준다.
*

그러면 단어 검색 기능과 동일한 효과를 누린다.

*와 같은 기능이지만 뒤부터 시작하고 싶다면 #을 누르면 된다.

  • 단어를 찾되 맨 마지막 단어부터 시작하기
#

6. 화면 스크롤 방식

화면 스크롤은 커서는 그대로 두고, 화면만 움직이는 방법이다.

  • 화면 아래로 가기
ctrl + e
  • 화면 위로 가기
ctrl + y
  • 화면 반페이지 아래로 가기
ctrl + d
  • 화면 반페이지 위로 가기
ctrl + u
  • 문서의 첫 행으로 가기
gg
  • 문서의 마지막 행으로 가기
G
  • 특정 n번째 행으로 이동하기
:n

7. VIM의 3가지 모드

  • 일반모드
    글은 쓰지않고 멍령형 모드를 사용하거나 화면 이동, 방향키 이동 등을 할 수 있는 모드이다.
esc버튼
  • 명령형 모드
    단어 검색이나 저장, 종료 등에 사용되는 명령어를 쓸 때 사용하는 모드이다. 일반 모드에서 사용할 수 있으며 :명령어로 사용한다.
:
  • 입력모드
    일반모드에서 텍스트를 쓸 수 있는 모드로 전환한다. 입력모드에서 일반모드로 가고싶다면 esc버튼을 누르면된다.
a, i, o

8. 입력하는 방법

  • 현재 커서 뒤로 입력하는 방법
a

대문자 A로 입력모드로 들어갈 시 해당 커서의 가장 마지막으로 건너뛴다.

  • 현재 커서 앞으로 입력하는 방법
i

대문자 I는 해당 커서의 맨 앞으로 건너뛴다.

  • openline으로 해당 커서 다음 줄을 새로 한 줄을 만들어 입력하는 방법
o

대문자 O는 해당 커서 위로 한 줄을 새로 만든다.

  • 해당 문자를 대체하는 방법
r 원하는문자

이와 같은 경우, 입력모드로 끝나는 것이 아닌 일반모드로 끝나기 때문에 끝나고도 일반모드로 쓸 수 있다.

  • 입력모드에서 일반모드로 가는 방법
ctrl + [
  • backspace 대신 문자 지우기
ctrl + h

9. 삭제, 복사, 붙여넣기

  • 일반모드에서 한 문자씩 삭제하기
x
  • 일반모드에서 한 문장 삭제하기
dd
  • 일반모드에서 해당 커서 이후로 다 삭제하기(문장 단위)
D
  • 아래 줄을 위로 끌어올리기
J
  • 잘라내기
    기본적으로 vim은 삭제하면 잘라내기 영역에 온다.

  • 해당 커서 아래에 붙이기

p
  • 해당 커서 위에 붙이기
P
  • 한줄을 그냥 복사하기
yy

그리고 p를 누르면 붙이기가 된다. 참고로 대문자 Y로 하면 똑같이 붙이기가 된다.

10. 작업 취소, 다시 실행, 이전 명령어 반복하기

undo, redo 기능이다.

  • 작업 취소
u

vim editor는 처음부터 끝까지의 기록을 모두 가지고 있기 때문에 모든 작업을 다시 실행할 수 있다.

  • 다시 실행
ctrl + r
  • 방금했던 작업을 다시 반복하기
.

dd로 한 줄을 없애고 .을 누르면 또 dd 실행한다.

11. visual 모드

visual 모드에서는 마우스로 해당 블럭을 선택, 드래그하듯이 쓸 수 있다.

  • 한 글자씩을 드래그
v 

v누른 후 방향키를 눌러 영역을 선택할 수 있다. 여기서 x를 누르면 삭제이고 y를 누르면 복사이다.

  • 한 줄(문장) 씩 드래그
V
  • 블록 드래그모드
crtl v
  • 전체 선택(응용)
gg v G

12. 단어 선택하기

  • 커서에 있는 단어 자체를 선택하기
viw
  • 특정 글자 안에 있는 단어 선택
vi + 특정글자

가령 (hello my world) 라고 있으면 vi + ( 입력 시, hello my world가 드래그 된다.

  • 비주얼 모드를 사용하지 않고, 바로 복사하기
yiw
  • 비주얼 모드를 사용하지 않고, 바로 삭제하기
ciw

13. 창 분할하기

  • 창을 수직분할
:vs
  • 창을 수평 분할
:sp
  • 창 이동
ctrl w + 방향키(h, j, k, l)
  • 분할된 창 끄기
:q
  • 분할된 창을 하나만들고 거기에 새 파일 띄우기
enew

14. 파일 다루기

  • 해당 파일과 같은 위치에 있는 파일 선택
:E

파일을 불러오면, 불러온 파일들이 탭처럼 저장이 된다. 여기를 버퍼라고 한다. 버퍼를 이동하는 방법은 다음과 같다.

  • 다음 버퍼로 이동
:bn
  • 이전 버퍼로 이동
:bp
  • 해당 버퍼로 이동
:b + 버퍼번호 
  • 버퍼 지우기
:bd

15. 작업 자동화

반복된 작업을 저장하여, 반복할 때 사용할 수 있다.

  • 기록하기
q(key) + 반복할 작업

key에 작업을 저장하는 것이다. 만약 @qq로 썼으면 q가 key가 된다.

  • 기록 종료하기
q

q를 한번더 누르면 된다.

  • 저장된 작업 사용하기
@(key)
  • 여러번 반복하기
n번 + @@

가령 3번 반복 작업하고싶다면, 3@@ 라고 쓰면 된다.

16. vimrc

기본적으로 vim 에디터에 편집창에서 컬러스킨이나 키맵을 변경해도 다음에 다시 열면 적용이 안된 상태로 열린다. 이를 영구적으로 적용시켜보자

C:\Program Files (x86)\Vim에 가면 vimrc파일이 있다. 이걸 열어보자, 여기를 변경하고 저장하면 영구적으로 적용된다.

맨 마지막으로 가서 다음의 코드를 넣자

colorscheme evening

저장 종료(wq) 해놓으면 저장된다.

0개의 댓글