1. 程式人生 > 其它 >Gvim學習記錄1--安裝

Gvim學習記錄1--安裝

技術標籤:GVIM

0.環境

windows10

1.Gvim的安裝

Gvim下載exe檔案,直接在window安裝即可。
注意:需要在系統變數中新增變數
變數名:VIM
變數值:VIM的安裝路徑
如:在這裡插入圖片描述
注意,在windows下檔案路徑應該是“/”而不是“\”

2._vimrc的基礎配置

"Startup - 編輯器啟動時需要新增的一些配置
" Startup {{{
filetype indent plugin on

" vim 檔案摺疊方式為 marker
augroup ft_vim
    au!
    au FileType vim setlocal foldmethod=marker
augroup END
" }}}
"設定 vim 相關檔案開啟後預設摺疊方式為 marker,約定俗成的用三個花括號註釋"包裹起來,這樣在你開啟配置檔案的時候 vim 就會幫你摺疊起來,配置檔案看起來"就簡潔多了



"*****************************************************************************
"General - 通用配置
"*****************************************************************************
" General {{{
set nocompatible
set nobackup
set noswapfile
set history=1024
set autochdir
set whichwrap=b,s,<,>,[,]
set nobomb
set backspace=indent,eol,start whichwrap+=<,>,[,] 
set paste "設定貼上模式:在Vim中通過滑鼠右鍵貼上時會在行首多出許多縮排和空格,通過set paste可以在插入模式下貼上內容時不會有任何格式變形、胡亂縮排等問題。
set clipboard+=unnamed  " Vim 的預設暫存器和系統剪貼簿共享,比如你在其它地方 copy 了一段文字回到 vim 裡面可以貼上進來
set winaltkeys=no " 設定 alt 鍵不對映到選單欄
" }}}




"*****************************************************************************
"Lang & Encoding - 語言和編碼
"*****************************************************************************
"vim 裡面設定編碼的地方很多,上面這些配置可以保證不會出現亂碼,像檔案選單、vim預設語言建議設定成 en_US
" Lang & Encoding {{{
set fileencodings=utf-8,gbk2312,gbk,gb18030,cp936
set encoding=utf-8
set langmenu=zh_CN
let $LANG = 'en_US.UTF-8'
"language messages zh_CN.UTF-8
" }}} 

set showcmd             "輸入的命令顯示出來,在右下角顯示,比如gg、dw命令等
set updatetime=3000     "自動存檔時間/毫秒
set wildmenu            "更好的命令補全
set belloff=all         "不發出滴滴聲
set ttimeoutlen=100     "等待時間
set history=1024        "歷史



"*****************************************************************************
"GUI - 介面
"*****************************************************************************
" GUI {{{
colorscheme base16-zenburn  "顏色配置

source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim
set cursorline
set hlsearch
set number
set lines=35 columns=140  " 視窗大小

" 分割出來的視窗位於當前視窗下邊/右邊
set splitbelow
set splitright

"不顯示工具/選單欄
set guioptions-=T
set guioptions-=m
set guioptions-=L
set guioptions-=r
set guioptions-=b

" 使用內建 tab 樣式而不是 gui
set guioptions-=e
set nolist
" set listchars=tab:▶\ ,eol:¬,trail:·,extends:>,precedes:<
set guifont=Inconsolata:h12:cANSI
" }}}


"*****************************************************************************
"Format - 基本的程式碼格式
"*****************************************************************************
" Format {{{
set ruler                                "顯示游標當前位置(右下角顯示當前游標座標)
set showmatch                    "顯示括號匹配
set autoindent                    "把當前行的對齊格式應用到下一行(自動縮排)
set smartindent
set tabstop=4
set ts=4                            "設定一個tab等於4個空格
set expandtab                     "輸入tab時,自動將其轉化為空格
set softtabstop=4
set foldmethod=indent
syntax on                                  "語法高亮度顯示,這個開啟後主題才能生效
set guifont=Monaco:h25          "字型大小
"set nu!                                 "顯示行號
set cursorline                      "突出顯示當前行

" set cursorcolumn              "突出顯示當前列
set ai!            "設定自動縮排

" set laststatus=2              "總是顯示狀態列
" }}}




"*****************************************************************************
"Keymap - 通用的快捷鍵
"*****************************************************************************
"快捷鍵的設定要遵循一個規則:儘量不要修改系統預設配置的快捷鍵,非要設定的話選擇好相應的模式
" Keymap {{{
let mapleader=","

nmap <leader>s :source $VIM/_vimrc<cr>
nmap <leader>e :e $VIM/_vimrc<cr>

map <leader>tn :tabnew<cr>
map <leader>tc :tabclose<cr>
map <leader>th :tabp<cr>
map <leader>tl :tabn<cr>

" 移動分割視窗
nmap <C-j> <C-W>j
nmap <C-k> <C-W>k
nmap <C-h> <C-W>h
nmap <C-l> <C-W>l

" 正常模式下 alt+j,k,h,l 調整分割視窗大小
nnoremap <M-j> :resize +5<cr>
nnoremap <M-k> :resize -5<cr>
nnoremap <M-h> :vertical resize -5<cr>
nnoremap <M-l> :vertical resize +5<cr>

" 插入模式移動游標 alt + 方向鍵
inoremap <M-j> <Down>
inoremap <M-k> <Up>
inoremap <M-h> <left>
inoremap <M-l> <Right>

" IDE like delete
inoremap <C-BS> <Esc>bdei

nnoremap vv ^vg_
" 轉換當前行為大寫
inoremap <C-u> <esc>mzgUiw`za
" 命令模式下的行首尾
cnoremap <C-a> <home>
cnoremap <C-e> <end>

nnoremap <F2> :setlocal number!<cr>
nnoremap <leader>w :set wrap!<cr>

imap <C-v> "+gP
vmap <C-c> "+y
vnoremap <BS> d
vnoremap <C-C> "+y
vnoremap <C-Insert> "+y
imap <C-V>		"+gP
map <S-Insert>		"+gP
cmap <C-V>		<C-R>+
cmap <S-Insert>		<C-R>+

exe 'inoremap <script> <C-V>' paste#paste_cmd['i']
exe 'vnoremap <script> <C-V>' paste#paste_cmd['v']

" 開啟當前目錄 windows
map <leader>ex :!start explorer %:p:h<CR>

" 開啟當前目錄CMD
map <leader>cmd :!start<cr>
" 列印當前時間
map <F3> a<C-R>=strftime("%Y-%m-%d %a %I:%M %p")<CR><Esc>

" 複製當前檔案/路徑到剪貼簿
nmap ,fn :let @*=substitute(expand("%"), "/", "\\", "g")<CR>
nmap ,fp :let @*=substitute(expand("%:p"), "/", "\\", "g")<CR>

" 設定切換Buffer快捷鍵"
nnoremap <C-left> :bn<CR>
nnoremap <C-right> :bp<CR>

"外掛快捷鍵
"NERDTree
" nerdTree快捷鍵對映
let NERDTreeWinPos='left'
let NERDTreeWinSize=30
map <F2> :NERDTreeToggle<CR>     "F2開啟,:q退出


"*****************************************************************************
"" For Vundle- 外掛相關(包括和當前外掛相關的配置和快捷鍵等)
"*****************************************************************************
set nocompatible              " 去除VI一致性,必須
   filetype off                  " 必須
   set rtp+=$VIM/vimfiles/bundle/Vundle.vim "vundle安裝地址

   call vundle#begin('$VIM/vimfiles/plugin') "外掛安裝地址

   Plugin 'VundleVim/Vundle.vim'  將需要安裝的外掛以這種形式寫在begin..end之間 
   Plugin 'scrooloose/nerdtree'

   call vundle#end()           
   filetype plugin indent on    " 必須 載入vim自帶和外掛相應的語法和檔案型別相關指令碼

3.安裝Vundle外掛管理器

在windows下安裝vundle比較麻煩,分為三步,vundle安裝外掛的原理依賴於git和curl,因此需要在windows安裝這兩種工具

3.1 安裝chocolatey

chocolatey是windows下實用的包管理器,類似於ubuntu下的apt-get,安裝步驟如下:在windows下開啟cmd,黏貼以下命令,回車執行,即可安裝chocolatey,這裡注意要使用管理員許可權。

@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin" 

3.2 安裝git和curl

如果電腦裡面有了git或者curl就可以不用重複安裝了,利用上一步安裝的包管理工具chocolatey,我們只需要在cmd下執行以下命令即可完成git或者curl的安裝,非常方便。

這裡同樣需要管理員許可權
choco install -y git
choco install -y curl

3.3 安裝Vundle

完成上面的步驟之後,終於可以安裝Vundle,在Vim的安裝目錄下,找到vimfiles,在該目錄下建立bundle資料夾(若有在不在建立,直接使用即可),進入bundler資料夾中,執行以下命令:

git clone https://github.com/gmarik/vundle

clone下來的資料夾為vundle,我們將其重新命名為Vundle.vim

3.4 Vundle的幾點常識

Vundle安裝外掛通過配置檔案有兩種形式

【1】在vundle#begin()和vundle#end()之間,配置行Plugin ‘外掛名稱’;
【2】直接配置一行Bundle ‘外掛名稱’;
在normal模式下,執行

:PluginInstall 或者:BundleInstall

常用命令參考:

:BundleInstall // 安裝外掛
:BundleInstall! // 更新外掛
:BundleClean // 解除安裝外掛