[vi 편집기] 단축키

삽입

기능
i 커서 위치에 Insert
I 줄 맨 앞에서 Insert
a 커서 다음에 Insert
A 줄 맨 뒤에서 Insert
o 커서 아래로 한 줄 띄우고 Insert
O 커서 위로 한 줄 띄우고 Insert

이동

기능
w 단어 첫 글자 기준으로 다음으로 이동
W 공백 기준으로 다음(단어의 시작)으로 이동
b 단어 첫 글자 기준으로 이전으로 이동
B 공백 기준으로 이전으로 이동
e 단어 마지막 글자 기준으로 다음으로 이동
E 공백 기준으로 다음(단어의 끝)으로 이동
gg 문서 맨 앞으로 이동
G 문서 맨 아래로 이동
^ 문장 맨 앞으로 이동
$ 문장 맨 뒤로 이동

검색

키|기능 —|— /|해당 word를 검색, `n`과 `N`으로 다음/이전 찾기

편집

기능
dd 현재 줄 잘라내기
yy 현재 줄 복사하기
p 붙여넣기
u 실행취소 (Undo)
ctrl + r 재실행 (Redo)
v Visual모드
y 복사
c 잘라내기

저장

기능
:w 저장
:q 닫기
:q! 저장하지 않고 닫기
:wq 저장하고 닫기
:숫자 지정한 줄 번호로 이동
h, j, k, l - 좌,하,상,우 커서이동
i - 현재 커서 위치에 Insert 하기
I - 현재 줄 맨앞에 Insert 하기
a - 현재 커서 다음칸에 Insert 하기
A - 현재 줄 맨뒤에 Insert 하기
O - 윗줄에 Insert 하기
o - 아랫줄에 Insert 하기

w - 단어 첫글자로 이동하기
W - 화이트스페이스 단위로 다음 글자로 이동하기
b - 백워드 방향으로 단어의 첫글자로 이동하기
B- 백워드 방향으로 화이트스페이스 단위로 다음 글자로 이동하기
e - 단어의 마지막 글자로 이동하기
ge - 백워드 방향으로 단어의 마지막 글자로 이동하기
gg - 문서 맨 앞으로 이동
G - 문서 맨끝으로 이동
^ - 문장 맨 앞으로 이동
0 - 라인 맨 앞으로 이동
$ - 문장 맨 뒤로 이동
f문자 - 문자의 위치로 이동 ; 를 누르면 계속 이동
F문자 - 백워드로 문자의 위치로 이동
t문자 - 문자의 앞위치로 이동
T문자 - 백워드방향으로 문자의 앞위치로 이동

/단어 - 문서에서 단어 찾기 n이나 N으로 다음/이전 찾기
* - 현재 단어를 포워드 방향으로 찾기
# - 현재 단어를 백워드 방향으로 찾기

Ctrl + f - 다음 페이지 이동
Ctrl + b - 이전 페이지 이동
Ctrl + u - 페이지절반만큼 다음으로 이동
Ctrl + d - 페이지절반만큼 이전으로 이동
H - 현재 화면의 맨 위라인으로 이동
M - 현재 화면의 중간 라인으로 이동
L - 현재 화면의 마지막 라인으로 이동

]] - 포워드 방향으로 여는 컬리 블레이스( { )로 이동
[[ - 백워드 방향으로 여는 컬리 블레이스( { )로 이동
][ - 포워드 방향으로 닫는 컬리 블레이스( { )로 이동
[] - 백워드 방향으로 닫는 컬리 블레이스( { )로 이동
% - {}()에서 현재 괄호의 짝으로 이동

dd - 현재 줄 잘라내기
dw - 단어 잘라내기
yy - 현재 줄 복사하기
p - 붙혀넣기
r - 현재 글자 교체하기
u - Undo
Ctrl + R : Redo
x - 현재 글자 지우기
X - 앞의 글자 지우기
> - 들여쓰기
< - 내어쓰기
. - 이전 명령어를 다시 실행

v - 비쥬얼모드(비쥬얼 모드에서 커서 이동해서 블럭지정 가능)
y - 복사하기
c - 잘라내기
cw - 단어 잘라내기
J - 다음 라인을 현재 줄의 끝으로 이어 붙힘
~ : 선택 문자 대소문자 변경
Ctrl + A : 숫자를 증가시키기
Ctrl + X : 숫자를 감소시키기

:w - 문서 저장하기
:q - 현재 문서 닫기
:q! - 저장하지 않고 닫기
:wq - 저장하고 닫기
:숫자 - 지정한 라인넘버로 이동

:new - 가로로 분할된 창 열기
:vs - 세로로 분할된 창 열기
Ctrl + w - 분할창 간에 이동하기
:tabnew - 새로운 탭 열기
:gt - 다음 탭으로 이동하기
:gT - 이전 탭으로 이동하기
:e ./ - 현재 탭에 오픈할 파일 탐색하기( ./ 는 현재위치에서 탐색 시작)
:colorscheme 스키마명 - VIM의 칼라스키마를 변경함(blue, desert, evening 등.. 스키마명에서 탭누르면 자동완성됨)

zc - 코드 접기(fold)
zo - 접힌 코드 펼치기
zd - fold 지우기
zR - 접힌 코드 모두 펼치기
zM - 코드 모두 접기
zD - 모든 fold 지우기

:buffers - 현재 Vim에서 여러 파일을 열었을때 버퍼에 있는 목록 확인
:buffer 숫자 - 버퍼 목록에 나온 숫자를 입력하면 해당 파일을 오픈함 ( :buffer 대신 :b 도 가능)
:bnext - 버퍼에 있는 다음 파일로 이동 ( :bn 도 가능)
:bprevious - 버퍼에 있는 이전 파일로 이동 ( :bp 도 가능)
:ball - 버퍼 목록에 있는 파일들이 가로로 분할된 창에 열림
views
0
0
이 글을 페이스북으로 퍼가기 이 글을 트위터로 퍼가기 이 글을 카카오스토리로 퍼가기 이 글을 밴드로 퍼가기
captcha
자동등록방지 숫자입력

웹개발

번호 제목 글쓴이 날짜 조회수
122 [Dart] Dart 문법 정리 최고관리자 09-09 24,845
121 [Flutter] absorbpointer-and-ignorepointer 최고관리자 09-08 24,166
120 [PHP] 타입선언 최고관리자 08-22 23,995
119 [PHP] error_level 셋팅과 실제 출력 최고관리자 08-21 24,100
118 [MySql] 타입지정시 괄호안의 숫자 최고관리자 08-18 24,131
117 [MySql] MySQL 최적의 데이터 타입 선택 방법 최고관리자 08-18 23,808
116 [MySql] 인덱스 조회시 주의 사항 최고관리자 08-18 23,813
115 [MySql] NOT NULL과 DEFAULT 를 동시에 쓸 필요가 있는가? 최고관리자 08-18 23,833
114 [Flutter] Row and Column 최고관리자 08-16 23,691
113 [Flutter] Linting 설정으로, 흔하게 실수할 수 있는 것을 build 전 방지하기. 최고관리자 08-16 23,856
112 [PHP] PHP 7.x PHP 8.x에서의 조건문 최고관리자 07-26 23,829
111 [JS] Webpack을 쓰는 이유 최고관리자 07-24 23,885
110 [Vue] Vue Router 최고관리자 07-22 23,763
109 [Vue] Vue.js 기본 원리 최고관리자 07-22 24,250
108 [MySql] 쿼리 결과를 합치는 union vs union all의 차이 최고관리자 07-10 23,777
107 [Vue] 일반적인 프로젝트의 구조에 대해 알아보자. 최고관리자 06-18 23,844
106 [JSP] vue등의 스크립트 분석을 위해 %태그 정도는 알자. 최고관리자 06-18 23,971
105 [MySql] 페이징(paging) 쿼리시 전체개수를 한번에 처리하는 방법 최고관리자 06-14 24,609
104 [MySql] Join vs Sub Query 비교 최고관리자 06-05 24,021
103 [SQL] SQL Join에 대한 이해 최고관리자 06-05 23,872