요새 vi를 많이 쓰는데..아직 명령어들이 익숙치 않아서..
--------------------------------------------
<명령모드>
. : 마지막 명령 실행
N. : 마지막 명령 N번 실행
Ctrl+R : Redo
0 : 줄의 처음으로 이동
$ : 줄의 끝으로 이동
w, b : 단어단위 커서이동
f : f다음에 오는 문자를 찾는다(동일행 내에서)
J : 줄 병합
m[0-9a-zA-Z] : 위치기억
'[0-9a-zA-Z] : 기억위치로 이동
'' : 이전 커서위치로 이동
[i : 함수의 프로토타입보기
*,# : 선택단어 찾기
% : 대응하는 괄호로 이동
q[0-9a-zA-Z] : 레코딩(매크로기능과 유사)
q : 레코딩 종료
@[0-9a-zA-Z] : 레코딩 실행
N@[0-9a-zA-Z] : 레코딩 N번 실행
^wn 새로운 창 나누기
^wo 현재 커서가 있는 창을 전체창으로..(여러개 창으로 나뉘어 있을때)
^ww 시계방향으로 창 사이를 이동
^w<방향키> 두개의 창 사이를 방향키의 방향으로 이동
^w+ 창 크게
^w- 창 작게
z<숫자> 창 높이설정
^w= 열려있는 창들의 크기를 모두 같게
^wc
^6 : 이전파일
v : 선택모드
V : 라인선택모드
Ctrl+V : 블럭선택모드
> y : 선택영역복사
> x : 선택영역잘라내기
> <,> : 선택영역 들여쓰기,내어쓰기
c : 문자의 치환
d : 문자의 삭제
y : 문자의 복사
> w : 한단어를 치환/삭제/복사
> $ : 현재커서부터 끝까지 치환/삭제/복사
> ^ : 행의 시작부터 현재커서까지 치환/삭제/복사
> G : 커서에서부터 파일의 나머지모두 치환/삭제/복사
> c,d,y : 한줄 전체 치환/삭제/복사
<라인모드>
:e filename : filename을 연다
:r filename : 현 문서에 filename을 삽입한다
:w filename : 현재파일을 filename으로 저장
:시작줄,끝줄 s/단어1/단어2/g : 시작줄부터 끝줄범위에있는 단어1을 단어2로 치환(g가 없으면 줄당1회만)
:! : command 실행
:sh : shell실행
:Ctrl+Z : vi백그라운드로 실행
:map : 명령문자열을 키보드의 키에 지정. 예):map #1 i\fl^V
:ab : 약어. 예) :ab ux UNIX(tm)
:vs : 가로로 창을 나눔. 예):Nvs ./ : N컬럼의 크기의 창에 현재디렉토리의 내용을 보여준다
:split(sp) : 세로로 창을 나눔. 사용법은 vs와 동일
:only : 창이 나눠있는 경우 현재열려있는 창 최대화
:args : 열려있는 파일목록표시. 현재파일은 []로 묶어표시
:marks : 열려있는 파일보기
:ls : 현재 열려있는 버퍼를 확인. 편집중에 다른파일 여러개를 연경우 이미 열린파일을 찾을 수 있음. N번 파일로 이동시 :bN
:fileformat(ff) : 줄바뀜 변환. 예)ff=unix : unix형태(\n)로 변경 unix,dos,mac가능
:s : 치환
:g : ?? 예):g/^$/d : 빈줄 지우기
<편집모드>
Ctrl+N,P : 자동완성기능
^ : 행의 시작
$ : 행의 끝
. : 한문자
[] : 집합. ^는 여집합, -는 범위
* : 0이상의 반복
\< : 단어의 시작(예- /\
--------------------------------------------
<명령모드>
. : 마지막 명령 실행
N. : 마지막 명령 N번 실행
Ctrl+R : Redo
0 : 줄의 처음으로 이동
$ : 줄의 끝으로 이동
w, b : 단어단위 커서이동
f : f다음에 오는 문자를 찾는다(동일행 내에서)
J : 줄 병합
m[0-9a-zA-Z] : 위치기억
'[0-9a-zA-Z] : 기억위치로 이동
'' : 이전 커서위치로 이동
[i : 함수의 프로토타입보기
*,# : 선택단어 찾기
% : 대응하는 괄호로 이동
q[0-9a-zA-Z] : 레코딩(매크로기능과 유사)
q : 레코딩 종료
@[0-9a-zA-Z] : 레코딩 실행
N@[0-9a-zA-Z] : 레코딩 N번 실행
^wn 새로운 창 나누기
^wo 현재 커서가 있는 창을 전체창으로..(여러개 창으로 나뉘어 있을때)
^ww 시계방향으로 창 사이를 이동
^w<방향키> 두개의 창 사이를 방향키의 방향으로 이동
^w+ 창 크게
^w- 창 작게
z<숫자>
^w= 열려있는 창들의 크기를 모두 같게
^wc
^6 : 이전파일
v : 선택모드
V : 라인선택모드
Ctrl+V : 블럭선택모드
> y : 선택영역복사
> x : 선택영역잘라내기
> <,> : 선택영역 들여쓰기,내어쓰기
c : 문자의 치환
d : 문자의 삭제
y : 문자의 복사
> w : 한단어를 치환/삭제/복사
> $ : 현재커서부터 끝까지 치환/삭제/복사
> ^ : 행의 시작부터 현재커서까지 치환/삭제/복사
> G : 커서에서부터 파일의 나머지모두 치환/삭제/복사
> c,d,y : 한줄 전체 치환/삭제/복사
<라인모드>
:e filename : filename을 연다
:r filename : 현 문서에 filename을 삽입한다
:w filename : 현재파일을 filename으로 저장
:시작줄,끝줄 s/단어1/단어2/g : 시작줄부터 끝줄범위에있는 단어1을 단어2로 치환(g가 없으면 줄당1회만)
:!
:sh : shell실행
:Ctrl+Z : vi백그라운드로 실행
:map : 명령문자열을 키보드의 키에 지정. 예):map #1 i\fl^V
:ab : 약어. 예) :ab ux UNIX(tm)
:vs : 가로로 창을 나눔. 예):Nvs ./ : N컬럼의 크기의 창에 현재디렉토리의 내용을 보여준다
:split(sp) : 세로로 창을 나눔. 사용법은 vs와 동일
:only : 창이 나눠있는 경우 현재열려있는 창 최대화
:args : 열려있는 파일목록표시. 현재파일은 []로 묶어표시
:marks : 열려있는 파일보기
:ls : 현재 열려있는 버퍼를 확인. 편집중에 다른파일 여러개를 연경우 이미 열린파일을 찾을 수 있음. N번 파일로 이동시 :bN
:fileformat(ff) : 줄바뀜 변환. 예)ff=unix : unix형태(\n)로 변경 unix,dos,mac가능
:s : 치환
:g : ?? 예):g/^$/d : 빈줄 지우기
<편집모드>
Ctrl+N,P : 자동완성기능
^ : 행의 시작
$ : 행의 끝
. : 한문자
[] : 집합. ^는 여집합, -는 범위
* : 0이상의 반복
\< : 단어의 시작(예- /\
\> : 단어의 끝(예 - /ful\> : ful로 끝나는 단어검색)
a부터 z까지의 버퍼에 명령을 지정
매크로 명령을 입력모드에서 편집후 "D 명령으로 버퍼에 저장
@으로 실행
예) i\fl^[Ea\fP^[ "aD @a