텍스트 파일을 만들거나 수정할 수 있는 interactive editor
작업은 buffer에서 한다.
윈도우의 notepad처럼 GUI로 제공된다.
세 가지 모드가 제공된다.




○ Input commands
 Command  Meaning
 a  커서 다음에 텍스트 추가
 A  해당 라인의 끝에 텍스트 추가
 i  커서 전에 텍스트 삽입
 I  해당 라인의 시작에 텍스트  삽입
 o  커서 아래에 새로운 라인 추가
 O  커서 위에 새로운 라인 추가

○ Positioning commands
 Command  Meaning
 h, ←, backspace  왼쪽으로 한 문자 이동
 j or ↓  한 라인 아래로 이동
 k or ↑  한 라인 위로 이동
 l, →, spacebar  오른쪽으로 한 문자 이동
 w  앞으로 한 단어 이동
 b  뒤로 한 단어 이동
 e  현재 단어의 끝으로 이동
 $  현재 라인의 끝으로 이동
 0 (숫자)  현재 라인의 처음으로 이동
 ^  현재 라인의 공백을 제외한 처음으로 이동
 Return  다음 라인으로 이동
 ctrl + f or b  한 페이지 아래로(f), 한 페이지 위로(b)
 ctrl + d or u  반 페이지 아래로(d), 반 페이지 위로(u)
 ctrl + l  Screen refresh

○ 텍스트 잘라내기 commands
 Command  Meaning
 x  커서에 있는 한 문자 잘라내기(cut)
 dw  위치한 곳에서부터 한 단어 잘라내기
 dd  커서가 위치한 한 라인 잘라내기
 D  커서가 위치한 곳에서부터 라인의 마지막 부분까지 잘라내기
 :5, 10d  5번째부터 10번째 라인 삭제(delete)

○ 텍스트 수정 commands
 Command  Meaning
 cw  커서가 위치한 곳에 있는 단어 변경(change)
 R  커서가 위치한 곳에서부터 해당 라인의 끝까지 overwrite
 C  커서가 위치한 곳에서부터 해당 라인의 끝까지 변경(change)
 s  한 문자 substitutes -> edit mode로 변경
 r  한 문자 Replaces -> command mode 계속 유지
 J  현재 라인과 아래쪽 라인 join
 xp  커서가 위치한 문자와 오른쪽에 있는 문자 교체
 ~  대소문자 변경
 u  이전 command undo
 U  현재 라인의 모든 변경 undo
 u  last-line command에서 이전 command undo
 :r filename  커서가 위치한 곳에 다른 파일 삽입

○ 텍스트 검색 / 교체 commands
 Command  Meaning
 /string  해당 string을 아래로 진행하며 검색
 ?string  해당 string을 위로 진행하며 검색
 n  string의 다음 위치 검색
 N  string의 이전 위치 검색
 :%s/old/new/g  전체 file에서 'old'문자를 'new'문자로 교체

○ Copy and Paste commands
 Command  Meaning
 yy(lowercase)  한 라인 copy
 p(lowercase)  커서가 위치한 다음에 paste
 P(uppercase)  커서가 위치한 이전에 paste
 :1, 3 co 5  1~3번 라인 copy하여 5번 라인 다음에 paste
 :4, 6 m 8  4~6번 라인을 8번 라인으로 이동
6번 라인 -> 8번 라인
5번 라인 -> 7번 라인
4번 라인 -> 6번 라인

○ Save and Quit commands
 Command  Meaning
 :w  변경사항 저장
 :w new_filename  new_filename으로 저장
 :wq  변경사항 저장하고 종료
 :x  변경사항 저장하고 종료
 zz  변경사항 저장하고 종료
 :q!  변경사항 저장하지 않고 강제 종료
 :wq!  강제로 변경사항 저장하고 종료

○ 사용자 정의 Session commands
 Command  Meaning
 :set nu  라인 number 보기
 :set nonu  라인 number 숨기기
 :set ic  검색 시 대소문자 무시
 :set noic  검색 시 대소문자 구분
 :set list  tab이나 end-of-line에 숨겨진 문자 보이기
 :set nolist  tab이나 end-of-line에 숨겨진 문자 숨기기 
 :set showmode  작업모드 보이기
 :set noshowmode  작업모드 숨기기
 :set  현재 설정된 변수 보기
 :set all  현재 설정된 변수 + 모든 변수 보기

○ Go commands
 Command  Meaning
 G  마지막 라인으로 이동
 1G or :1  처음 라인으로 이동
 :21  21번 라인으로 이동
 21G  21번 라인으로 이동

Posted by 겨울섬
,