3가지 모드

 
Normal : vi 처음 실행했을 때 노멀모드이다. 이 상태에서는 텍스트입력이 불가. 커서를 이동해서 각종 자르고 붙이고 편집.
Insert : 보통 'a' 'i'를 누르고 입력모드로 들어간다. Esc키누르면 노멀모드로.
Command-line : ' : ' 입력하면 가장 아랫라인에 프롬프트 상태로 되고 가종 명령 실행 저장 나가기 등등.
 
vi 시작
 
$ vi
$ vi <파일명> 
 
vi 나가기
 
나가려면 일단 노멀모드 상태이어야 한다.
 
:q        만약 파일에 변경사항이 있으면 알려준다. 저장하지 않으면 나갈 수가 없다.
:q!        무조건 나간다. 저장 되었건 안되었건
:wq        변경사항 저장하고 나간다.
 
입력하기
 
vi처음시작하면 노멀모드이다. a,A,i 눌러서 입력모드로 들어가서 입력하면된다.
a    현재 커서가 위치한 다음칸부터 입력
A    현재커서가 위치한 줄의 끝에서부터 입력
i    현재 커서가 위치한 그 자리부터 입력
 
커서 컨트롤
 
노멀모드에서 커서 이동키
h    왼쪽으로
j    아래로
k    위로
l    오른쪽으로
자판에 방향키가 있다면 방향키도 가능하다
 
b    한단어 뒤로(왼쪽)
f     한단어 앞으로(오른쪽)
^    커서가 위치한 줄의 처음으로
$    커서가 위치한 줄의 마지막으로
(    커서가 위치한 문장의 처음으로
)    커서가 위치한 문장의 마지막으로
{    커서가 위치한 단락의 처음으로
}    커서가 위치한 다란의 마지막으로
1G    현재파일의 가장 처음으로
0G    현재파일의 가장 마지막으로
 
지금까지에 모든 조작전에 숫자를 입력할 수 있고 그 숫자만큼 움직인다.
예를 들어서 '5b'를 차례로 누르면 5단어 뒤로 커서가 이동하고  '5^'를 누르면 5줄 위로 커서가 이동한다.
 
아래는 화면을 움직이는 키이다. 커서는 움직이지 않는다. 그런데 화면이 움직여 커서가 화면 끝에 걸리면 그 때부터는 커서가 화면끝에서 계속걸려서 움직인다.
Ctrl + e    한 줄씩 화면을 아래로 이동
Ctrl + d    한 화면 아래로 이동
Ctrl + y    한 줄식 화면을 위로 이동
Ctrl + u    한 화면 위로 이동
 
지우기, 바꾸기
 
x    커서가 위치한 한글씩 지운다.
숫자x    입력한 숫자의 글자를 지운다.
dw    커서 위치한 한 단어를 지운다.
d$     커서 위치한 라인을 지운다.
dd    커서 위치한 라인 지운다.  
d}      커서 위치한 다락을 지운다.
 
cw    커서가 위치한 곳부터 커서 위치한 단어의 끝부분까지 변경할 수 있는 입력모드로 전환
c$    커서가 위치한 곳부터 커서 위치한 라인의 끝부분까지 변경할 수 있는 입력모드로 전환
c}    커서가 위치한 곳부터 커서 위치한 단락의 끝부분까지 변경할 수 있는 입력모드로 전환
위 바꾸기 키를 입력하면 변경할 범위의 끝에 ' $ ' 표시가 생긴다. 그리고 모든 변경 마친다음 Esc눌러 노멀모드로 나와야한다.
 
자르기, 복사하기 , 붙이기
 
기본적으로 복사는 y, 붙이기는 p 자르기는 위에서 말한 지우기 x로 한다.
여기에 숫자, w, $, } 등과 조합해서 범위를 정한다. 예를 들어서 5y, yw, y$
 
찾기 바꾸기
 
' / '나 ' ? '로 찾는다.
/    커서아래로
?    커서위로
 
특정문자를 찾아서 바꾸는 것은 명령모드로 들어가서 다음과 같이  입력한다.
:%s/찾고자하는 물자/바꾸고자하는 문자
예  :%s/A/B        A를 찾아서 B로바꾼다
 
옵션사용가능하다
예    :%s/A/B/g        - 모든 A를 찾아서 B로 자동으로 바꾼다.
       :%s/A/B/gc       - 모든 A를 찾아서 B로 하나하나 물어가면서  바꾼다.  y, n 눌러서 결정
 
 
 
 

다중창 사용

 
vi에서 창을 분할하여 사용가능하다. 명령모드에서 다음을 입력한다.
:hide        현재커서가 위치한 창을 닫는다
:only        현재커서가 위치한 창만 남기고 모두 닫는다
:split filename        입력한 파일을 다른창에서 불러온다
:sview filename        split와 동일하고 다만 읽기모드로 불러온다. 편집불가
:vsplit filename        창을 세로로해서 파일 불러온다.
 
 
 
창간 이동과 창크기 조정은 다음과 같이
Ctrl + w 방향기        커서이동
Ctrl + ww            다음창으로 이동
Ctrl + w _            현재창 최대화
Ctrl + w +            현재창 한줄 키움
Ctrl + w -            현재창 한줄 줄임
Ctrl + w =            모든창 같은 크리로
 
vi 환경설정
 
환경설정 파일은 다음 세가지가 있다.
/etc/vimrc
~/.vimrc
~/.exrc
 
위 파일은 없을 수 도 있다. 더 많은 정보는 아래 사이트 참조
 

+ Recent posts