Vim 단축키 #2

범위 지정 하기

범위 지정에 쓰이는 특수 기호(메타 문자)

명령어 설명

.

현재 행을 의미합니다.

$

마지막 행을 의미합니다.

+#

현재 위치에서 #만큼 아래 행을 의미합니다.

-#

현재 위치에서 #만큼  행을 의미합니다.

%

문서 파일 전체를 의미합니다.


비주얼 모드

행 번호로 범위를 지정하는 방법은 불편합니다. 비주얼 모드라는 것은 마우스를 드래그 하듯이 시각적으로 블록을 선택,복사,삭제 할 수 있습니다.

비주얼 모드 기능

명령어

설명
v 현재 커서 위치에서 블록을 지정
V 현재 커서가 위치한 행에서 행 단위로 블록을 지정

Tip. 비주얼 모드로 텍스트를 선택하고 u를 선택하면 모두 소문자로 변환하고 U를 누르면 대문자로 변환합니다. ~를 누르면 대,소문자가 스위칭됩니다.


옵션,도움말,에러

Vim을 더욱 편하게 사용하려면 각종 옵션과 색상 테마를 설정해야 합니다. 궁금한 기능을 찾아서 볼 수 있도록 도움말을 사용하는 방법과 도움말에서 검색어를 사용하는 방법을 알아 봅시다.

옵션 설정

명령어 설명
:set 옵션 설정
.vimrc 옵션 파일
.colo 색상 테마
.help 도움말

set 명령어 사용법

명령어 설명
:set 현재 옵션 설정을 보여줍니다.
:set all 모든 옵션 설정을 보여줍니다.
:set [no]name name에 해당하는 옵션을 켜거나 끕니다.
:set name! name에 해당하는 옵션 상태를 전환합니다.
:set name=value name에 해당하는 옵션에 value 값을 할당합니다.

Tip. 명령행 모드에서 :set all 명령어를 입력시 출력 결과가 열이 딱 맞이 낳고 들쑥 날쑥한 것이 보이는데 no가 앞에 붙은 옵션은 현재 비활성화 상태고 no가 붙지 않은 것들은 활성화 상태입니다. :set 명령어 입력시 현재 설정된 주요 설정들만 간략하게 볼 수 있습니다.

편집에 관련된 기초 옵션들

명령어 설명
nu(number) 화면에 행 번호를 표시합니다.
ai(autoindent) 자동 들여쓰기를 사용합니다.
cindent C 스타일의 들여쓰기를 제공합니다.
ts=value(tabstop) 탭 크기를 value로 지정합니다.
sw=value(shiftwidth) 블록 이동시 열의 너비입니다.
tw=value(textwidth) 편집할 화면의 열 길이를 정합니다. (0이면 비활성화)

Tip. sw(shiftwidth)는 ts(tabstop)보다 같거나 작아야합니다.


옵션과 색상 테마 저장하기(vim 설정 파일)

설정 파일 만들기

Vim을 실행한 후 리눅스, 유닉스 맥 에선 :e ~/.vimrc라고 명령하고 윈도 계열에선 :e ~/_vimrc 라고 명령합니다.

" vim runtime configuration file
" 행 번호 표시
set nu
" 자동 들여쓰기, C스타일 들여쓰기 설정
set ai cindent
" 탭 크기, 블록 이동시 열의 너비 지정
set ts=4 sw=4

쌍따옴표(")는 주석문 입니다.

문법 오류 표시

명령어 설명
:syntax enable 문법 표시를 사용합니다.
:syntax clear 문법 표시를 사용하지 않습니다.
:colorscheme 색상을 사용합니다.
blue, darkblue, default ... 테마 종류

Tip. 기본 내장 되어 있는 테마들 말고도 다른 사람들이 만들어 놓은 테마들도 사용하실 수 있습니다. 저 같은 경우는 sublime text에서 monokai를 사용했었는데 혹시나 해서 찾아보니 vim용도 제작되어 있네요. monokai Theme Github ~/.vim/colors/ 폴더에서 받으신 파일(monokai.vim)을 넣으시고 ~/.vimrc 에 syntax enable colorscheme monokai 코드를 입력하시면 됩니다.


도움말 사용하기

도움말에 사용되는 접두어

명령어 설명
nu(number) 화면에 행 번호를 표시합니다.
ai(autoindent) 자동 들여쓰기를 사용합니다.
cindent C 스타일의 들여쓰기를 제공합니다.
ts=value(tabstop) 탭 크기를 value로 지정합니다.
sw=value(shiftwidth) 블록 이동시 열의 너비입니다.
tw=value(textwidth) 편집할 화면의 열 길이를 정합니다. (0이면 비활성화)


'Vim' 카테고리의 다른 글

Vim 시작 #1  (0) 2015.02.07