Mac Vim 설치

7392 단어
Mac Vim 설치
MacVim 소개
MacVim은 이름 그대로 Mac 시스템의 Vim입니다.Vim은 보편적으로 클래스 Vi 편집기 중 가장 좋은 것으로 추앙받는데, 사실상 진정한 강적은 Emacs의 다른 변체에서 나온다.1999년에 Emacs는 Linuxworld 텍스트 편집 분류의 우승자로 선정되었고 Vim은 2위에 굴복했다.그러나 2000년 2월에 Vim은 Slashdot Beanie의 최고의 오픈 소스 텍스트 편집기 대상을 수상했고 Emacs를 2선으로 밀어붙였다. 전체적으로 보면Vim과 Emacs는 텍스트 편집 분야에서 매우 우수하다.
MacVim 설치
Mac는 Vim을 미리 설치했지만 공식적인 Vim은 Mac에 미비하고 오랫동안 아무도 관리하지 않는 카본 그래픽 사용자 인터페이스만 있다.MacVim은 주로 이를 바탕으로 완전한 코코 사용자 인터페이스를 추가했는데 그 핵심 부분은Vim과 동기화되었다.MacVim은 프로세스를 분리하는 방식을 사용합니다. 하나의 MacVim 프로그램은 여러 개의 Vim 프로세스를 시작할 수 있으며, 각각 하나의 MacVim 창에 표시됩니다. 이것은 공식 Vim과 다른 플랫폼 아래의 GVim이 지원하지 않는 것입니다.MacVim은 도구막대, 스크롤 막대, 전체 화면 표시, Mac 메뉴 단축키 바인딩 등 많은 Mac OS X의 기본적인 인터페이스 기능도 지원한다.
#     vim  
vim --version

MacVim은 두 가지 설치 방법이 있습니다. 1 Github에서 Macvim을 다운로드합니다.dmg 설치 키트 설치 2 Homebrew를 사용하여 설치
brew install macvim

MacVim 구성
/usr/local/bin 디렉토리에서 MacVim에 대한 소프트 링크를 설정합니다.또한 Mac 사전 설치 Vim 버전이 너무 낮아 MacVim을 사용합니다.app 패키지의 Vim을 대체합니다. 원래 설치된/usr/bin/vim의 Vim을 동시에 보존하려면 별명을 만들어서 덮어쓸 수 있습니다.환경 변수 및 소프트 링크 구성
#                  `$PATH` ,            
echo 'export PATH=/usr/local/Cellar/macvim/8.1-149_1/MacVim.app/Contents/bin:$PATH' >> ~/.zshrc
 
#        mvim   /usr/local/bin/   
cp /usr/local/Cellar/macvim/8.1-149_1/MacVim.app/Contents/bin/mvim /usr/local/bin/mvim
 
#    /usr/local/bin/    mvim     
ln -s /usr/local/Cellar/macvim/8.1-149_1/MacVim.app/Contents/bin/mvim /usr/local/bin/mvim
 
#  MacVim  Vim    ,     ~/.zshrc    
echo 'alias vim="/usr/local/Cellar/macvim/8.1-149_1/MacVim.app/Contents/MacOS/vim"' >> ~/.zshrc
#     .zshrc       
source ~/.zshrc

프로필은vim를 시작하는 과정에서 먼저 프로필을 찾아 명령을 실행합니다. 이 초기화 파일은vimrc, gvimrc, exrc 세 가지가 있습니다.:version 명령을 통해vim의 프로필 정보를 볼 수 있습니다.
:version
VIM - Vi IMproved 8.1 (2018 May 17, compiled Jun 30 2018 01:47:01)
macOS version
Included patches: 1-72
Compiled by Homebrew
......
 system vimrc file: "$VIM/vimrc"       #   vimrc    
     user vimrc file: "$HOME/.vimrc"   #   vimrc    
 2nd user vimrc file: "~/.vim/vimrc"   #     vimrc    
      user exrc file: "$HOME/.exrc"    #     vi       
  system gvimrc file: "$VIM/gvimrc"    #   gvimrc    
    user gvimrc file: "$HOME/.gvimrc"  #   gvimrc    
2nd user gvimrc file: "~/.vim/gvimrc"  #     gvimrc    
       defaults file: "$VIMRUNTIME/defaults.vim"
 system menu file: "$VIMRUNTIME/menu.vim"  # MacVim        
  fall-back for $VIM: "/Applications/MacVim.app/Contents/Resources/vim"      #     VIM 

설정 파일의 불러오는 순서는 다음과 같습니다:scriptname에서 각 스크립트의 불러오는 순서를 볼 수 있습니다
  1: /usr/local/Cellar/macvim/8.1-149_1/MacVim.app/Contents/Resources/vim/vimrc
  2: ~/.vimrc
  3: /usr/local/Cellar/macvim/8.1-149_1/MacVim.app/Contents/Resources/vim/runtime/syntax/syntax.vim
  4: /usr/local/Cellar/macvim/8.1-149_1/MacVim.app/Contents/Resources/vim/runtime/syntax/synload.vim
  5: /usr/local/Cellar/macvim/8.1-149_1/MacVim.app/Contents/Resources/vim/runtime/syntax/syncolor.vim
  6: /usr/local/Cellar/macvim/8.1-149_1/MacVim.app/Contents/Resources/vim/runtime/filetype.vim
  7: /usr/local/Cellar/macvim/8.1-149_1/MacVim.app/Contents/Resources/vim/runtime/menu.vim
  8: /usr/local/Cellar/macvim/8.1-149_1/MacVim.app/Contents/Resources/vim/runtime/autoload/paste.vim
  9: /usr/local/Cellar/macvim/8.0-133/MacVim.app/Contents/Resources/vim/runtime/ftoff.vim
 10: ~/.vim/bundle/Vundle.vim/autoload/vundle.vim   
  ......
 85: /usr/local/Cellar/macvim/8.1-149_1/MacVim.app/Contents/Resources/vim/gvimrc
 86: ~/.gvimrc    
  ......

볼 수 있습니다:macvim은 시작할 때 전역vimrc>> 사용자를 순서대로 불러옵니다.vimrc>> 전역 gvimrc>> 사용자.gvimrc, 터미널vim가 시작되면 gvimrc도 불러오지 않습니다.gvimrc 즉,
  • 사용자 프로필의 프로필은 전역 프로필의 프로필을 덮어씁니다.따라서 우리는 ~/.vimrc에서vim의 기본 설정을 수정합니다.
  • GUIvim에 대해 gvimrc는vimrc의 설정을 덮어씁니다.따라서 우리는 ~/.vimrc는 터미널 vim과 GUIvim의 구성을 다르게 합니다.또한 GUIvim은 더 많은 확장을 지원하며 일부 기능은 터미널 vim에서 사용할 수 없습니다.

  • 사용자 프로파일 만들기
    #        
    cd ~
    #   mvim     .vimrc
    mvim .vimrc
    

    구성 파일 편집
    #         ,            :
    :edit $MYVIMRC
    #          ,            :
    :tabedit $MYVIMRC
    

    프로파일을 적용하여 프로파일을 수정한 후 Vim을 다시 시작하거나:source 명령을 사용하여 새 설정을 적용해야 합니다.
    :source $MYVIMRC
    

    구성 파일에 다음 명령을 추가하여 저장한 후 구성을 자동으로 적용할 수 있습니다.
    autocmd bufwritepost .vimrc source $MYVIMRC
    

    프로필 기본 프로필 중국어 도움말 보이기
  • vimdoc
  • 다운로드
  • 파일을 ~/.vim/doc, 경로가 존재하지 않으면 스스로 생성
  • vim 실행 열기:helptags~/.vim/doc
  • ~/.vimrc에서 설정
  • set helplang=cn 
    if version >= 603
        set helplang=cn
        set encoding=utf-8
    endif
    

    프로필을 저장한 후 자동으로 프로필을 적용합니다:com[mand][!][{attr}...] {cmd} {rep}은 사용자 명령을 정의합니다. 명령의 이름은 {cmd}이고, 바뀐 텍스트는 {rep}입니다.이 명령의 속성 (아래 참조) 은 {attr}입니다.만약 이 명령이 이미 존재한다면, 이미 지정하지 않은 경우,이 경우 명령이 재정의됩니다.
    BufWritePost는 자동 명령 이벤트입니다. BufWritePost는 버퍼 전체를 파일로 쓴 후 (즉.vimrc를 수정하고 저장한 후),source $MYVIMRC를 자동으로 실행하여 설정을 적용합니다.
    autocmd! BufWritePost $MYVIMRC source $MYVIMRC
    

    글꼴 서식 지정:set guifont=글꼴 이름:h
  • '글꼴북'에서 찾을 수 있는 글꼴만 있으면 원하는 글꼴을 다운로드하여 설치할 수 있음
  • 글꼴 이름에 공백이 포함되어 있으면\를 사용하여 뜻을 바꿔야 한다.
  • 파워라인 테마를 사용하려면poerline 종류의 글꼴로 설정하면 효과가 가장 좋습니다.
  • set guifont=Meslo\ LG\ S\ DZ\ Regular\ for\ Powerline:h13
    

    문자 인코딩 enc,fenc,fencs,tenc, 일반적으로 난코드는 대부분 이런 매개 변수의 설정이 정확하지 않아서 일어난다.
  • enc,vim 내부에서 사용하는 인코딩, 예를 들어 버퍼, 레지스터의 문자열, 윈도우즈는 일반적으로 gbk,mac는utf-8
  • fenc, 현재 파일 자체의 인코딩을 열었습니다. 만약 enc와fenc가 일치하지 않으면vim는 인코딩 변환을 하고fenc 인코딩으로 변환하여 파일을 저장합니다
  • fencs, 문자 인코딩 목록, 인코딩의 자동 식별은 이를 통해 이루어진다
  • tenc, 터미널에서 사용하는 인코딩, 또는vim는 화면을 표시할 때의 인코딩에 사용되며, 표시할 때vim는 내부 인코딩을 화면 인코딩으로 변환하여 출력하며, 기본값은enc
  • 이다.
    set enc=utf-8   "mac linux   enc   utf-8"
    

    기타 항목
    "      -------------------------------------"
    set number                      "    "
    set showtabline=0               "       "
    set guioptions-=r               "       " 
    set guioptions-=L               "       "
    set guioptions-=b               "       "
    set cursorline                  "       "
    set cursorcolumn                "       "
    set langmenu=zh_CN.UTF-8        "      "
    "      -------------------------------------"
    syntax on                       "      "
    set nowrap                      "       "
    set fileformat=unix             "   unix       "
    set cindent                     "  C       "
    set tabstop=4                   "   tab           ,   8"
    set shiftwidth=4                "           "
    set backspace+=indent,eol,start "set backspace&      "
    set showmatch                   "       "
    set scrolloff=5                 "       5 "
    set laststatus=2                "      "
    "      -------------------------------------"
    set mouse=a                     "    "
    set selection=exclusive
    set selectmode=mouse,key
    set matchtime=5
    set ignorecase                  "     "
    set incsearch
    set hlsearch                    "     "
    set noexpandtab                 "     table"
    set whichwrap+=,h,l
    set autoread
    

    좋은 웹페이지 즐겨찾기