개발
vim 명령어 정리
VIM?
- 리눅스 운영체제에서 텍스트를 편집할 때 사용하는 도구로, 마우스 없이 키보드만으로 작업할 수 있도록 개발되어 있다.
- 초심자에게는 매우 어렵지만, 숙련자에게는 생산성 높은 도구로 평가받는다.
- 4가지 모드와 키마다 설정된 명령의 기능이 다양해서, vim을 사용하기 위해서는 별도로 공부해야 한다.
모드
- Normal Mode
- 어떤 모드라도 ESC 키를 입력하면 명령모드로 전환된다.
- Command Mode
- 여러 가지 환경 설정을 변경하거나, 파일 저장 및 종료, 검색 등을 할때 사용한다.
- Normal 모드에서는 :, /, ?키를 누르면 전환된다.
- Insert Mode
- Normal 모드에서 i, I, a, A, o, O를 누르면 전환되는데, 각 명령어는 아래에서 상세히 설명하겠다.
- Visual Mode
- 읽기 전용 모드로, 해당 상태에서는 드래그가 가능하다는 장점이 있다.
- Normal 모드에서 v, V를 누르면 전환된다.
명령어
- 파일 저장 및 종료
:q!라고 입력하면 편집한 내용을 날리고 강제 종료한다.
:wq!라고 입력하면 편집한 내용을 저장하고 강제 종료한다.
- 스크롤
ctrl b는 한 페이지를 위로 올리고, ctrl f는 한 페이지를 아래로 내린다.
ctrl u는 반 페이지를 위로 올리고, ctrl d는 반 페이지를 아래로 내린다.
- 이동
- 글자 단위 이동
- h(◀️), j(🔽), k(🔼), l(▶️)로 커서를 이동시킬 수 있다.
- 단어 단위 이동
0 혹은 ^를 입력하면 줄의 가장 앞으로 가고, $를 입력하면 줄의 가장 뒤로 이동한다.
w를 입력하면 다음 단어의 맨앞으로 이동하고, e를 입력하면 현재 혹은 다음 단어의 맨뒤로 이동한다.
b를 입력하면 이전 단어의 맨앞으로 이동한다.
- 줄단위 이동
gg 를 입력하면 맨앞으로, G를 입력하면 맨뒤로 이동한다.
- 원하는 줄로 이동하려면 줄수와 G를 입력하면 된다.
- 10번째 줄로 이동하려면
10 G라고 입력하면 된다.
- 입력모드 전환
- insert
i(소문자)를 입력하면, 커서 앞에 글자가 입력된다.
I(대문자)를 입력하면, 커서가 있는 줄 앞에 글자가 입력된다.
- append
a(소문자)를 입력하면, 커서 뒤에 글자가 입력된다.
A(대문자)를 입력하면, 커서가 있는 줄 맨 뒤에 글자가 입력된다.
- open
o(소문자)를 입력하면, 커서 다음 줄로 글자가 입력된다.
O(대문자)를 입력하면, 커서 이전 줄로 글자가 입력된다.
- 지우기
- 글자 지우기
x(소문자)를 입력하면 커서의 뒷 글자가 삭제된다. (delete 키와 유사)
X(대문자)를 입력하면 커서의 앞 글자가 삭제된다. (backspace 키와 유사)
- 단어 지우기
- 단어에서 삭제하고 싶은 부분에 커서를 두고
dw(delete word)를 입력하면 해당 단어부터 끝까지 삭제된다.
- 줄에서 삭제하고 싶은 곳에 커서를 두고
d0 혹은 d^를 입력하면 맨앞에서 해당 부분이 삭제된다.
- 줄에서 삭제하고 싶은 곳에 커서를 두고
D 혹은 d$를 입력하면 해당 부분에서 맨뒤까지 삭제된다.
- 줄 지우기
dd를 입력하면 커서가 있는 한 줄이 모두 삭제된다.
- 전체 줄에서 삭제하고 싶은 곳에 커서를 두고
d gg를 입력하면 맨앞에서 해당 부분까지 삭제된다.
- 전체 줄에서 삭제하고 싶은 곳에 커서를 두고
d G를 입력하면 해당 부분에서 맨뒤까지 삭제된다.
- 복사
- 단어 복사
- 복사하고 싶은 곳에 커서를 두고
yw(yank word)를 입력하면 해당 단어부터 끝까지 복사된다.
- 줄에서 복사하고 싶은 곳에 커서를 두고
y0 혹은 y^를 입력하면 맨앞에서 해당 부분이 복사된다.
- 줄에서 복사하고 싶은 부분에 커서를 두고
y$를 입력하면 해당 부분에서 맨뒤까지 삭제된다.
- 줄 복사
Y 혹은 yy를 입력하면 커서가 있는 한 줄이 모두 복사된다.
- 붙여넣기
- 단어 붙여넣기
p(소문자)를 입력하면 커서 뒤에, P(대문자)를 입력하면 커서 앞에 붙여넣기된다.
- 줄 붙여넣기
p(소문자)를 입력하면 해당 줄 아래, P(대문자)를 입력하면 해당 줄 위에 붙여넣기된다.
- 실행 취소 및 재실행
u를 누르면 이전 작업이 실행취소되고, ctrl r를 누르면 그 작업이 재실행된다.
- 환경 설정
- 줄수 활성화 및 비활성화
:set nu 혹은 :set number를 입력하면 줄수가 표시된다.
:set no 혹은 :set nonumber를 입력하면 줄수가 비활성화된다.
- 색상 테마 설정
:colo를 입력한뒤 tab키를 누르면 현재 사용할 수 있는 테마가 표시된다.
:colo 혹은 :color 혹은 :colorscheme 뒤에 ${테마이름} 추가하여 원하는 테마로 변경할 수 있다.
- 예를 들어,
:colo darkblue, :color darkblue, :colorschem darkblue 식으로 활용하면 된다.
- 터미널 활성화
:term이라고 입력하면 터미널을 사용할 수 있다.
- 탭 이동시에는
ctrl w + 화살표키를 눌러서 이동할 수 있다.
공부에 도움되는 사이트
- Vim Adventure
- 게임 형식으로 VIM 명령어를 연습할 수 있는 사이트이다.
- 레벨 3단계까지만 무료이고, 이후 6개월 기간으로 25달러를 결제하여야 한다.
- Vim Vallery
- 실제 편집 환경과 유사하게 VIM 명령어를 연습할 수 있는 사이트인데, 별도로 계정을 생성하여야 한다.
- Talk to Vim like it’s a person까지만 무료이고, 이후 단계는 39달러를 결제해야 한다.