반응형
폴드란 코드줄을 한 줄로 접거나/펼칠때 쓰는 것이다, 대략 아래 사진과 같은 기능이다.
폴드 만들기
폴드 삭제
폴드 열기
폴드 닫기
폴드 열기/닫기 스위치
폴드로 커서 이동
Set Options
폴드 만들기
선택된 줄 폴드 만들기
키 | 동작 |
zf (선택한 줄) | 선택한 줄 폴드 만들고 폴드 닫기 |
현재 줄부터 윗줄까지 폴드 만들기
키 | 동작 |
zf[숫자]k :,-[숫자]fo |
현재 줄과 현재 줄 위 [숫자]개 줄 폴드 만들고 폴드 닫기 |
현재 줄부터 아랫줄까지 폴드 만들기
키 | 동작 |
[숫자]zF | 현재 줄과 현재 줄 아래 [숫자] - 1개 줄 폴드 만들고 폴드 닫기 |
zf[숫자]j :,+[숫자]fo |
현재 줄과 현재 줄 아래 [숫자]개 줄 폴드 만들고 폴드 닫기 |
다수 줄 폴드 만들기
키 | 동작 |
zfgg :1,fo |
파일 첫 줄부터 현재 줄까지 폴드 만들고 폴드 닫기 |
zfG :,$fo |
현재 줄부터 파일 마지막 줄까지 폴드 만들고 폴드 닫기 |
:[시작 줄 숫자],[끝 줄 숫자]fo | [시작 줄 숫자]번째 줄부터 [끝 줄 숫자]번째 줄까지 폴드 만들고 폴드 닫기 |
zf/[단어] | [단어]가 줄의 첫 열에서부터 시작하는 경우 - 현재 줄부터 현재 줄 아래, [단어] 포함한 줄의 윗 줄까지 폴드 만들고 폴드 닫기 예시: 아래와 같은 줄에서 zf/aaa 1111 (현재 줄) 1111 aaa1 결과: 굵어진 줄은 폴드에 포함된 줄을 의미 1111 (현재 줄) 1111 aaa1 [단어]가 줄의 첫 열에서부터 시작하지 않는 경우 - 현재 줄부터 현재 줄 아래, [단어]를 포함한 줄까지 폴드 만들고 폴드 닫기 예시: 아래와 같은 줄에서 zf/aaa 1111 (현재 줄) 1111 1aaa 결과: 굵어진 줄은 폴드에 포함된 줄을 의미 1111 (현재 줄) 1111 1aaa |
zf?[단어] | 커서가 현재 줄의 첫 열에 있는 경우 - 현재 줄 위에 [단어] 포함한 줄부터 현재 줄 윗줄까지 폴드 만들고 폴드 닫기 예시: 아래와 같은 줄에서 zf?aaa aaa1 1111 1111 (현재 줄) 결과: 굵어진 줄은 폴드에 포험된 줄을 의미 aaa1 1111 1111 (현재 줄) 커서가 현재 줄 첫 열에 있지 않는 경우 - 현재 줄 위에 [단어] 포함한 줄부터 현재 줄까지 폴드 만들고 폴드 닫기 예시: 아래와 같은 줄에서 zf?aaa 1aaa 1111 1111 (현재 줄) 결과: 굵어진 줄은 폴드에 포함된 줄을 의미 1aaa 1111 1111 (현재 줄) |
폴드 삭제
현재 줄이 속한 폴드 삭제
키 | 동작 |
zd | 현재 줄이 속한 폴드 삭제 (삭제한 폴드의 하위 폴드는 삭제 안됨) |
zD | 현재 줄이 속한 폴드와 하위 모든 폴드 삭제 |
모든 폴드 삭제
키 | 동작 |
zE | 현재 창에 존재하는 모든 폴드 삭제 |
폴드 열기
현재 줄이 속한 폴드 열기
키 | 동작 |
zo :foldo :foldopen |
현재 줄이 속한 폴드 열기 (하위 폴드는 열기 않음) |
zO | 현재 줄이 속한 폴드와 하위 폴드 전부 열기 |
모든 폴드 열기
키 | 동작 |
zn zR |
모든 폴드 열기 |
zr (zm의 반대) :%foldo |
모든 폴드의 한 레벨 열기 |
:[시작 줄 숫자],[끝 줄 숫자]foldo | [시작 줄 숫자]번째 줄부터 [끝 줄 숫자]번째 줄까지, 모든 폴드 한 레벨 열기 |
폴드 닫기
현재 줄이 속한 폴드 닫기
키 | 동작 |
zc :foldc :foldclose |
현재 줄이 속한 폴드 닫기 (하위 폴드는 닫지 않음) |
zC | 현재 줄이 속한 폴드부터 현재 줄이 속한 최상단 폴드까지 닫기 닫기 미포함 - 현재 줄의 하위 폴드 - 현재 줄의 상위 폴드의 형제 폴드 |
모든 폴드 닫기
키 | 동작 |
zM zN (zn으로 열린 폴드만 닫기 가능) |
모든 열린 폴드 닫기 |
zm | 모든 폴드 한 레벨 닫기 (zr의 반대) |
:[시작 줄 숫자],[끝 줄 숫자]foldc | [시작 줄 숫자]부터 [끝 줄 숫자]까지, 모든 폴드의 최상단 폴드만 닫기 |
폴드 열기/닫기 스위치
폴드 열기/닫기 스위치
키 | 동작 |
za | 현재 줄이 속한 폴드가 닫힌 경우 - 현재 줄이 속한 폴드 열기 현재 줄이 속한 폴드가 열린 경우 - 현재 줄이 속한 폴드 닫기 |
zA | 현재 줄이 속한 폴드가 닫힌 경우 - 현재 줄이 속한 폴드부터 하위 폴드까지 열기 현재 줄이 속한 폴드가 열린 경우 - 현재 줄이 속한 폴드부터 최상단 폴드까지 닫기 |
폴드로 커서 이동
이전 & 다음 폴드로 커서 이동
키 | 동작 |
zk | 이전 폴드의 마지막 줄로 이동 |
zj | 다음 폴드의 첫 줄로 이동 |
현재 줄이 속한 폴드의 첫 & 마지막 줄로 커서 이동
키 | 동작 |
[z | 현재 줄이 속한 폴드의 첫 줄로 이동 |
]z | 현재 줄이 속한 폴드의 마지막 줄로 이동 |
Set Options
폴드 활성화/비활성화
키 | 동작 |
:set foldenable | 폴드 활성화 |
:set nofoldenable | 폴드 비활성화 |
폴드 방법 설정
키 | 동작 |
:set fdm :set foldmethod |
현재 폴드 방식 보기 |
:set fdm=[옵션] :set foldmethod=[옵션] |
현재 폴드 방식을 [옵션]으로 변경 [옵션] manual - 기본 값 (유저가 zf같은 키로 폴드 만들기) marker - 기존 폴드 주위에 /*{{{*/와 /*}}}*/ 폴드 태그 삽입하고 태그 속 줄을 대상으로 폴드 만들기 indent - 들여쓰기에 따라 폴드 만들기 syntax - 문법에 따라 폴드 만들기 |
폴드 생성 시, 폴드 마크 문자 삽입
키 | 동작 |
:set foldmarker=[시작 태그],[끝 태그] | foldmethod 값이 marker일 경우 시작과 끝 태그를 /*[시작 태그]*/와 /*[끝 태그]*/로 변경 |
폴드 최대 중첩 갯수 설정
키 | 동작 |
:set foldnestmax=[숫자] | 폴드 최대 [숫자]개까지 중첩 가능 |
반응형
'코딩 > Vim' 카테고리의 다른 글
Vim - Cut (텍스트 자르기) (0) | 2022.12.31 |
---|---|
Vim - Character (문자, 진법으로 숫자 삽입, 특수 문자 삽입, digraph) (0) | 2022.12.19 |
Vim - Buffer (버퍼) (1) | 2022.11.15 |
Vim - Mark (마크) (0) | 2022.11.11 |
Vim - Shell Command (쉘 명령어) (0) | 2022.10.27 |