[Linux] vi, vim
vi 모드
vi는 명령 모드와 마지막 행 모드가 있다.
명령 모드
는 화면 가운데에 커서가 있는 경우이고,
마지막 행 모드
는 ESC를 누르고 : 입력 후 저장
등을 할 수 있는 모드이다. 쓰다보면 감이 온다.
명령 모드
i: 커서 위치에 삽입
a: 커서 다음 위치에 삽입
o: 커서 아래 줄에 삽입
x: 글자 1개 삭제
dw: 단어 1개 삭제
dd: 한 줄 삭제
r: 한 문자 변경
cc: 줄의 내용 변경
u: 명령 취소 (Ctrl + Z)
yy: 현재 줄 복사
p: 붙여 넣기
dd: 잘라내기
k: 커서 위로 ↑
j: 커서 아래로 ↓
h: 커서 왼쪽으로 ←
l: 커서 오른쪽으로 →
0: 줄의 맨 앞으로 (Home)
$: 줄의 맨 뒤로 (End)
(: 문장의 처음
): 문장의 끝
{: 문단의 처음
}: 문단의 끝층
마지막 행 모드
w: 파일 저장
w \[파일명\]: \[파일명\]으로 저장
q: 저장하지 않고 종료
q!: 강제 종료
wq: 저장하고 종료
wq!: 강제로 저장하고 종료
vim
# vi 명령과 동일하다.
gg : 문서 맨 앞으로 이동
G : 파일 끝으로 이동
/ : 검색 (n은 다음 N은 이전)
df( : (전까지 삭제
. : 이전 명령 반복 실행
u : 되감기
ctrl+R : 앞감기
d : 삭제
y : 복사
c : 변경
p : 붙여 넣기
*p : 클립보드에서 붙여 넣기
yy : 현재 줄 복사
dd : 현재 줄 잘라내기
x : 한글자 지우기
aw : 글자 하나
at : tag 하나
as : 문장 하나
ap : 문단 하나
ab : 단어 하나
it : 테그 안 내용
i" : "" 안의 내용
ip : 문단 안의 내용
{ : 문단 시작
} : 문단 끝
f문자 - 문자의 위치로 이동 ; 를 누르면 계속 이동
F문자 - 백워드로 문자의 위치로 이동
t문자 - 문자의 앞위치로 이동
T문자 - 백워드방향으로 문자의 앞위치로 이동
* - 현재 단어를 포워드 방향으로 찾기
# - 현재 단어를 백워드 방향으로 찾기
Ctrl + f - 다음 페이지 이동
Ctrl + b - 이전 페이지 이동
Ctrl + u - 페이지절반만큼 다음으로 이동
Ctrl + d - 페이지절반만큼 이전으로 이동
H - 현재 화면의 맨 위라인으로 이동
M - 현재 화면의 중간 라인으로 이동
L - 현재 화면의 마지막 라인으로 이동
]] - 포워드 방향으로 여는 컬리 블레이스( { )로 이동
[[ - 백워드 방향으로 여는 컬리 블레이스( { )로 이동
][ - 포워드 방향으로 닫는 컬리 블레이스( { )로 이동
[] - 백워드 방향으로 닫는 컬리 블레이스( { )로 이동
% - {}나 ()에서 현재 괄호의 짝으로 이동
dw - 단어 잘라내기
r - 현재 글자 교체하기
x - 현재 글자 지우기
X - 앞의 글자 지우기
> - 들여쓰기
< - 내어쓰기
J - 다음 라인을 현재 줄의 끝으로 이어 붙힘
~ - 선택 문자 대소문자 변경
Ctrl + A - 숫자를 증가시키기
Ctrl + X - 숫자를 감소시키기
zc - 코드 접기(fold)
zo - 접힌 코드 펼치기
zd - fold 지우기
zR - 접힌 코드 모두 펼치기
zM - 코드 모두 접기
zD - 모든 fold 지우기