728x90
반응형
vi/vim
은 사용자 환경과 설정을 관리하기 위해 여러 파일을 사용하며, 특정 순서대로 이를 불러옵니다.- 각 파일의 역할과 순서를 다음과 같이 설명합니다.
-
/etc/vimrc
- 시스템 전역 설정 파일.
- 모든 사용자에게 적용되는 기본 설정을 담고 있습니다.
-
~/.vimrc
- 사용자 개별 설정 파일.
- 개별 사용자가 커스터마이징한 설정을 담습니다.
$HOME
디렉터리에 위치합니다.
-
/etc/gvimrc
- GUI Vim(gVim)의 전역 설정 파일.
- GUI 환경에서 적용될 기본 설정을 포함합니다.
-
~/.gvimrc
- 사용자 개별 GUI Vim 설정 파일.
- gVim에서만 사용하는 사용자 지정 설정을 담습니다.
-
$MYVIMRC
- 사용자가 명시적으로 설정한 vimrc 파일 경로.
- Vim이 이를 통해 설정 파일의 위치를 확인합니다.
-
Plugin 설정 파일
~/.vim/plugin/
디렉터리에 있는 개별 플러그인 파일.- 각 플러그인별 설정 스크립트가 여기에 저장됩니다.
-
색상 파일
~/.vim/colors/
디렉터리.- 사용자 정의 색상 테마 파일이 저장됩니다.
-
임시 및 백업 파일
~/.vim/swap/
,~/.vim/backup/
디렉터리에 생성.- 편집 중 생성되는 임시 파일 및 백업 파일의 저장소.
Vim은 설정 파일을 아래와 같은 순서로 읽습니다:
-
Vim 실행 초기화
-u
또는--noplugin
옵션으로 설정 파일을 지정하거나 플러그인 로딩을 비활성화할 수 있습니다.- 기본 설정 파일은 이 옵션이 없는 경우에만 로드됩니다.
-
전역 설정 파일
/etc/vimrc
/etc/gvimrc
(GUI 환경 시).
-
사용자 로컬 설정 파일
~/.vimrc
~/.gvimrc
(GUI 환경 시).
-
$MYVIMRC
파일$MYVIMRC
환경 변수가 지정된 경우, 이 경로에 있는 설정 파일을 로드.
-
플러그인 로드
~/.vim/plugin/
디렉터리에 있는 플러그인 스크립트 로드.- 파일명 순서대로 읽습니다.
-
컬러스키마 로드
- 설정 파일에서 명시된 색상 테마 파일 로드.
-
명령줄 인수 설정
- 실행 시 명령줄에서 전달한 옵션이나 스크립트를 처리.
-
사용자 정의 로드
- 설정 파일 안에서 추가적으로 지정된 설정(예: 외부 스크립트 포함) 로드.
-
vim -u NONE
- 설정 파일을 전혀 로드하지 않고 기본 설정으로 시작합니다.
-
vim -u path/to/custom.vim
- 특정 설정 파일만 로드합니다.
- 환경 파일에서 설정 충돌을 방지하려면 설정 파일 간 명확한 역할 분담과 주석을 활용하는 것이 좋습니다.
- 설정이 제대로 적용되었는지 확인하려면
:scriptnames
명령어로 로드된 파일 목록을 확인할 수 있습니다.
$VIMRUNTIME/defaults.vim
은 **Vim이 기본 설정(default settings)**을 관리하기 위해 사용하는 초기화 파일입니다.- 이 파일은 Vim이 실행될 때 기본값을 설정하고, 필요 시 사용자 정의 설정과 통합될 수 있도록 설계되었습니다.
-
기본 설정 제공
- Vim의 표준적인 기본값을 정의하여, 사용자 설정이 없는 경우라도 기본적인 동작이 일관되게 유지되도록 합니다.
- 사용자 환경 설정(
~/.vimrc
,$MYVIMRC
)을 작성하지 않은 사용자에게 유용합니다.
-
초기화 작업
- Vim 실행 시 초기 설정을 수행하며, 이후 사용자가 정의한 설정 파일(
~/.vimrc
)이 이를 덮어씁니다. - 예: 문법 강조, 줄 번호 표시, 파일 인코딩 설정 등.
- Vim 실행 시 초기 설정을 수행하며, 이후 사용자가 정의한 설정 파일(
-
환경 변수
$VIMRUNTIME
와의 관계$VIMRUNTIME
은 Vim의 실행 경로를 지정하는 환경 변수로, 이 경로 안에 여러 시스템 설정 파일이 포함되어 있습니다.defaults.vim
은$VIMRUNTIME
디렉터리 내에 위치하며, 주로 시스템 관리자가 관리하는 파일입니다.
$VIMRUNTIME/defaults.vim
파일에는 기본 설정들이 포함되어 있으며, 다음과 같은 옵션이 정의될 수 있습니다:
-
기본 설정 예시
vim
" Enable syntax highlighting syntax on " Enable filetype detection and plugins filetype plugin indent on " Set default tab width set tabstop=8 set shiftwidth=8 set expandtab " Enable line numbers set number
-
특징
- Vim의 전역 설정 파일로 작동하며, 사용자 설정 이전에 로드됩니다.
- 단순히 Vim의 기본 동작을 개선하고 사용성을 높이는 역할을 합니다.
-
Vim은 실행 시 다음 순서로 설정 파일을 로드합니다:
- 전역 설정 파일:
/etc/vimrc
- 사용자 설정 파일:
~/.vimrc
$VIMRUNTIME/defaults.vim
- 전역 설정 파일:
-
defaults.vim
은 일반적으로 사용자 설정 파일보다 먼저 실행되며, 사용자 설정 파일이 이를 덮어씁니다.
- 사용자가
defaults.vim
의 설정을 원하지 않을 경우, 다음과 같이 비활성화할 수 있습니다:-
Vim
실행 시 인수 추가bash
vim -u NONE
위 명령은
defaults.vim
을 포함한 모든 설정 파일을 무시하고 기본값으로 실행합니다. -
환경 설정에서 비활성화
~/.vimrc
에 다음 설정을 추가해defaults.vim
이 로드되지 않도록 할 수 있습니다:vim
set nocompatible let g:skip_defaults_vim = 1
-
defaults.vim
파일을 직접 수정하는 것은 권장되지 않습니다.- 시스템 전역 파일이므로, 다른 사용자와의 설정 충돌 또는 Vim 업데이트 시 덮어쓰기 위험이 있습니다.
- 필요할 경우, 사용자 설정 파일(
~/.vimrc
)에서 덮어쓰기 방식을 활용하는 것이 좋습니다.
728x90
반응형
'vim' 카테고리의 다른 글
vim 인코딩(encoding) 표시 (0) | 2024.09.05 |
---|---|
vim 파일 인코딩 방식 캐릭터 셋(character-set) 보기 (0) | 2018.01.22 |