사용자 도구

사이트 도구


vim

Vim에 관해 정리한다.

.vimrc 정리하기

  • 설정을 모두 .vimrc에 때려넣지 말고 ~/.vim/plugin/settings/gui.vim 처럼 ~/.vim/plugin/settings/*.vim으로 기능별 파일로 분리하여 넣도록 하고, .vimrc는 간결하게 유지하라.

GVim

파일이 존재할 경우 설정 읽어들이기

~/.vimrc_pc라는 파일이 존재하면 해당 파일을 읽어 들인다. DropBox를 통해 설정 파일을 동기화 하면서, 각 PC별로 따로 설정을 저장하고 읽어들이는데 사용한다.

if (filereadable($HOME . "/.vimrc_pc"))
    :source $HOME/.vimrc_pc
endif

~/.vimrc 설정 다시 적용 reload

  • 현재 화면에 .vimrc 파일을 열고 있는 상태라면 :so % : 현재 열고 있는 파일을 source로 읽으라는 의미
  • 일반적인 상황에서는 :so $MYVIMRC

환경변수 확인

:version
:echo expand('~')
:echo $HOME
:echo $VIM
:echo $VIMRUNTIME

GUI 환경에서만 설정 적용

if has("gui_running")
...
endif

GUI 환경에서 글꼴 설정

  • :set guifont=* : 명령을 실행하면 글꼴을 선택해서 즉시 지정하는게 가능하다. 일단 이렇게 원하는 글꼴을 지정한 뒤에
  • :set guifont=<TAB> : nocompatible 모드일 경우 <TAB>키를 누르면 현재 지정된 글꼴 문자열이 자동으로 나오게 된다. 해당 문자열을 설정파일의 글꼴 설정부분에 set guifont=XXX 형태로 넣어주면 된다.
  • compatible 모드일 경우 <TAB> 대신 <Ctrl-E>를 누른다.
  • Windows 에서는 글꼴을 지정하는 설정 파일이 ANSI로 저장돼 있어야만 한다. 설정 파일의 인코딩을 set fileencoding=cp949 로 지정한다.

키보드 화살표 사용금지

inoremap <Up>      <NOP>
inoremap <Down>    <NOP>
inoremap <Left>    <NOP>
inoremap <Right>   <NOP>

HTML을 브라우저에서 바로열기

  • http://stackoverflow.com/questions/8708154/open-current-file-in-web-browser-in-vim
    " firefox, chrome, opera 등이 PATH에 잡혀 있어야하며, 실행파일명이 다를경우 보정해 주어야 한다.
    " *nix 계열에서는 명령어 끝(% 뒤)에 & 기호를 붙여준다.
    
    nnoremap <leader>wf :exe ':silent !firefox %'<CR>
    nnoremap <leader>wc :exe ':silent !chromium-browser %'<CR>
    nnoremap <leader>wo :exe ':silent !opera %'<CR>
    nnoremap <leader>wi :exe ':silent !iexplore %'<CR>

Vim 정리

Plugins

Shell VI Key Binding

  • bash ~/.bashrc
    set -o vi
  • python/Django shell ~/.editrc
    bind -v
  • python - How do I use vi keys in ipython under *nix? ~/.ipython/profile_default
    c.TerminalInteractiveShell.editing_mode = 'vi'
  • readline 사용하는 애플리케이션 공통(ipython 등 포함) ~/.inputrc
    set editing-mode vi
    set keymap vi
    set convert-meta on

관련 자료

vim.txt · 마지막으로 수정됨: 2017/01/06 08:12 저자 kwon37xi