더북(TheBook)

명령 모드에서 사용할 수 있는 기능키

명령 모드에서 가장 많이 사용되는 키는 무엇보다 커서 이동키일 것입니다. 원래 vi는 h, l, j, k로 커서를 이동합니다.vim은 일반적인 텍스트 에디터의 커서 이동키인 방향키와 Home, End, Page Up, Page Down를 모두 지원합니다.

불편해 보이지만 사실 vi에서 커서 이동에 h, l, j, k를 사용하는 데는 이유가 있습니다. 방향키 대신 h, l, j, k를 이용해서 오른손의 움직임을 최소화시키기 위한 것입니다. 커서를 이동하기 위해 방향키를 누르려면 오른손이 오른쪽으로 더 움직여야 하며 그만큼 텍스트를 입력하는데 시간이 걸립니다. 따라서 vi에 익숙해진다면 훨씬 더 빠른 키 입력이 가능합니다.

vi에서 사용할 수 있는 커서 이동키는 크게 글자 단위, 단어 단위, 줄 단위로 나누어집니다.

표 3-8 커서 이동키
글자 단위 h 한 칸 왼쪽으로 이동하기
l 한 칸 오른쪽으로 이동하기
j 한 줄 아래로 이동하기
k 한 줄 위로 이동하기
단어 단위 w 다음 단어의 첫 글자로 이동하기
W 다음 단어의 첫 글자로 이동하기
b 이전 단어의 첫 글자로 이동하기
B 이전 단어의 첫 글자로 이동하기
e 단어의 마지막 글자로 이동하기
E 단어의 마지막 글자로 이동하기
줄 단위 ^ 그 줄의 첫 글자로 이동, Shift와 함께 사용하기
$ 그 줄의 마지막 글자로 이동하기, Shift와 함께 사용하기
0 (숫자) 그 줄의 처음으로 이동하기
다음 줄의 첫 글자로 이동하기
+ 다음 줄의 첫 글자로 이동하기
- 윗줄의 첫 글자로 이동하기

명령 모드에서 입력 모드로 전환할 때 텍스트 입력키를 누릅니다. 대문자와 소문자 키의 기능이 다르므로 주의합니다.

표 3-9텍스트 입력키
a 커서 위치의 다음 칸부터 입력하기(append)
A 커서가 있는 줄의 끝부터 입력하기
i 커서 위치부터 입력하기(키보드의 Insert도 같은 기능을 합니다)
I 커서가 있는 줄의 맨 앞에서부터 입력하기
o 커서 바로 아래에 줄을 만들고 입력하기(open line)
O 커서 바로 위에 줄을 만들고 입력하기
s 커서가 있는 단어를 지우고 입력하기
S 커서가 있는 행을 지우고 입력하기

기본적인 삭제키로는 윈도에서와 마찬가지로 Del 커서 기준으로 다음 한 글자 삭제)와 백스페이스(커서 기준으로 이전 한 글자 삭제)를 사용합니다. 이 외에 명령 모드에서 사용할 수 있는 삭제키는 다음과 같습니다.

표 3- 10 텍스트 삭제키
x dl 커서 위치의 글자 삭제
X dh 커서 바로 앞의 글자 삭제
dw 한 단어를 삭제
d0 커서 위치부터 줄의 처음까지 삭제
D d$ 커서 위치부터 줄의 끝까지 삭제
dd 커서가 있는 줄을 삭제
dj 커서가 있는 줄과 그 다음 줄을 삭제
dk 커서가 있는 줄과 그 앞줄을 삭제

명령 모드에서 사용할 수 있는 텍스트 수정키는 다음과 같습니다.

표 3- 11텍스트 수정키
>r 커서 위치의 한 글자 수정하기
R 커서 위치부터 ESC를 누를 때까지 다른 글자로 수정하기, 단 같은 줄에만 해당
s 커서 위치의 한 글자를 여러 글자로 수정하기
ch 커서 바로 앞의 한 글자를 여러 글자로 수정하기
cw 커서 위치의 한 단어를 수정하기
c0 커서 위치부터 줄의 처음까지 수정하기
C 커서 위치부터 줄의 끝까지 수정하기
cc 커서가 있는 줄을 수정하기
cj 커서가 있는 줄과 그 다음 줄을 수정하기
ck 커서가 있는 줄과 그 앞줄을 수정하기

텍스트 복사는 임시 기억장소에 텍스트를 저장해 두는 의미이고 텍스트 붙여넣기는 임시 기억장소에 저장된 텍스트를 특정 위치에 써 넣는다는 의미입니다.

표 3- 12 텍스트 복사키
yw 커서 위치부터 단어의 끝까지 복사하기
y0 커서 위치부터 줄의 처음까지 복사하기
y$ 커서 위치부터 줄의 끝까지 복사하기
yy 커서가 있는 줄을 복사하기
yj 커서가 있는 줄과 그 다음 줄을 복사하기
yk 커서가 있는 줄과 그 앞줄을 복사하기
p 커서의 다음 위치에 붙여넣기
P 커서가 있는 위치에 붙여넣기

undo 기능인 작업 취소는 u 또는 U를 사용합니다.

표 3- 13 작업 취소, 반복 키
u 작업 취소하기
U 그 줄에 행해진 작업 모두 취소하기
. 조금 전에 했던 명령을 반복하기

명령 모드에서 텍스트를 검색할 수 있는 키는 /?입니다. 화면 하단에 / 또는 ?가 표시되고 여기에 검색할 텍스트를 입력합니다. Enter를 누르면 파일 내에 있는 검색어가 하이라이트될 것입니다. 파일 내에 동일한 텍스트가 더 있는지 전진 또는 후진하면서 찾으려면 n 또는 N을 사용합니다.

표 3- 14 텍스트 검색 키
/ 현재 커서를 기준으로 앞에 있는 텍스트를 검색합니다.
? 현재 커서를 기준으로 뒤에 있는 텍스트를 검색합니다.
n 같은 방향으로 검색할 텍스트를 계속 검색해 나갑니다.
N 반대 방향으로 검색할 텍스트를 계속 검색해 나갑니다.
/엔터키 앞쪽으로 계속 검색합니다.
?엔터키 뒤쪽으로 계속 검색합니다.
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.