Linux系統的vim編輯器的配置文件的初步說明

vim 編輯器的基本說明

vi編輯器的功能相似於Windows下的記事本,只能編輯普通文本,而vim編輯器則至關於Windows下的notepad++等高級編輯器,提高了代碼開發效率。java

將vi命令默認定向到vim,須要作如下調整。編程

 

vim 編輯器的的配置文件.vimrc的重要參數說明

每一個用戶的家目錄下面均可以建立一個.vimrc的vim配置文件,優化用戶編程的環境並提升開發效率。若是想在整個環境中對vim開發環境進行優化,可將配置參數寫入/etc/vimrc中。這樣之後,全部用戶可使用優化後的開發環境。vim

如下是一些常見的重要參數:bash

'' ~/.vimrc
'' vim config file
'' date 2019-06-05
'' Created by ant
'' Blog:https://www.cnblogs.com/ant-colonies/

''''''''''''''''''''''''''''''''''
'' => 全局變量
''''''''''''''''''''''''''''''''''

'' 關閉兼容模式
set nocompatible

'' 歷史記錄數
set history=100

'' 開啓相關插件
filetype on
filetype plugin on
filetype indent on

'' 當文件在外部被修改時,自動更新該文件
set autoread

'' 激活鼠標
set mouse=a


''''''''''''''''''''''''''''''''''
'' => 字體和顏色
''''''''''''''''''''''''''''''''''

'' 語法檢查
syntax enable

'' 字體
''set guifont=dejaVu\ Sans\ MONO\ 10
''
'' 設置配色
''colorscheme desert

'' 高亮顯示光標所在行
set cursorline
hi cursorline guibg=#00ff00
hi CursorColumn guibg=#00ff00


''''''''''''''''''''''''''''''''''
'' => 代碼摺疊功能
''''''''''''''''''''''''''''''''''
'' 激活代碼摺疊
set foldenable

'' 摺疊方式 (可簡寫 set fdm=XX)
''manual   自定義摺疊
''indent   更多的縮進表示更高級別的摺疊
''expr     用表達式來定義摺疊
''syntax   用語法來表示摺疊
''diff     對沒有更改的文本進行摺疊
''marker   對文中的標誌進行摺疊
set foldmethod=manual

'' 摺疊區域的寬度
'' 若是不爲0,則在屏幕左側先是一個摺疊的標識
'' 這兩個標識是"-"和"+",分別表示"打開"和"關閉"摺疊的內容
set foldcolumn=0

'' 摺疊層數
setlocal foldlevel=3

'' 自動關閉摺疊
set foldclose=all

'' 用空格鍵來代替zo和zc快捷鍵實現開關摺疊
''zo O-pen a fold 
''zc C-lose a fold
''zf F-old creation  建立摺疊
nnoremap <space> @=((foldclosed(line('.')) < 0) ? 'zc' : 'zo')<CR>

set nofen
set fdl=0


''''''''''''''''''''''''''''''''''
'' => 文字處理
''''''''''''''''''''''''''''''''''

'' 使用空格代替Tab
set expandtab

'' 全部的Tab和縮進爲4個空格
set tabstop=4

'' 設定 << 和 >>命令移動時的寬度爲4
set shiftwidth=4

'' 退格鍵一次刪除4個空格
set softtabstop=4

set smarttab

'' 縮進,自動縮進(繼承前一行的縮進)
'' set autoindent命令自動縮進, autoindent 縮寫爲 ai
'' set ai 自動縮進; set noai 無自動縮進,可在vim打開的文件臨時(:set ai)
'' 可以使用":set ai sw=4" 打開縮進並設置縮進級別
set ai

'' samrt indent,智能縮進
set si

'' 自動換行
set wrap
'' soft width,軟寬度
set sw=4


''''''''''''''''''''''''''''''''''
'' => Vim界面
''''''''''''''''''''''''''''''''''

'' Turn on wild menu
set wildmenu

'' 顯示標尺
set ruler

'' 命令行高度
set cmdheight=1

'' Do not redraw, when running macro.. lazyredraw
set lz

'' 退格
set backspace=eol,start,indent

'' backspace and cursor keys wrap to
set whichwrap+=<,>,h,l

'' Set magic on 魔數打開
set magic

'' 關閉錯誤響鈴
set noerrorbells

'' 關閉可視響鈴
set novisualbell

'' 顯示匹配的括號 ([{ 和 }])
set showmatch

'' How many tenths of a second to blink, 光標一秒鐘閃爍的多說個10次
set mat=2

'' 高亮顯示搜索到的內容
set hlsearch

'' 搜索時不區分大小寫,命令行縮寫 :set ic  :set noic
set ignorecase


''''''''''''''''''''''''''''''''''
'' => 編碼設置
''''''''''''''''''''''''''''''''''

set encoding=utf-8

'' 文件編碼
set fileencodings=utf-8

'' 終端編碼
set termencoding=utf-8


''''''''''''''''''''''''''''''''''
'' => 其餘設置
''''''''''''''''''''''''''''''''''

'' 智能縮進
set smartindent
set cin
set showmatch

'' 隱藏工具欄
set guioptions-=T

'' 隱藏菜單欄
set guioptions-=m

'' 置空錯誤鈴聲的終端代碼
set vb t_vb=

'' 顯示狀態欄 (默認爲1,表示沒法顯示狀態欄)
set laststatus=2

'' 粘貼不換行問題的解決辦法功能鍵 F9
set pastetoggle=<F9>

'' 背景顏色
set background=dark

'' 高亮相關
highlight Search ctermbg=black ctermfg=white guifg=white guibg=black 


'' Shell script 的開頭自動增長解釋器及其餘信息
autocmd BufNewFile *.py,*.cc,*.sh,*.java exec ":call SetTitle()"
func SetTitle()
    if expand("%:e") == 'sh'
	    call setline(1, "##!/bin/bash")
		call setline(2, "#Author:ant")
		call setline(3, "#Blog:https://www.cnblogs.com/ant-colonies/")
		call setline(4, "#Time:".strftime("%F %T"))
		call setline(5, "#Name:".expand("%"))
		call setline(6, "#Version:V1.0")
		call setline(7, "#Discription:This is a test script.")
    endif
endfunc

 

set nocompatible
set history=100
filetype on
filetype plugin on
filetype indent on
set autoread
set mouse=a
syntax enable
set cursorline
hi cursorline guibg=#00ff00
hi CursorColumn guibg=#00ff00
set nofen
set fdl=0
set expandtab
set tabstop=4
set shiftwidth=4
set softtabstop=4
set smarttab
set ai
set si
set wrap
set sw=4
set wildmenu
set ruler
set cmdheight=1
set lz
set backspace=eol,start,indent
set whichwrap+=<,>,h,l
set magic
set noerrorbells
set novisualbell
set showmatch
set mat=2
set hlsearch
set ignorecase
set encoding=utf-8
set fileencodings=utf-8
set termencoding=utf-8
set smartindent
set cin
set showmatch
set guioptions-=T
set guioptions-=m
set vb t_vb=
set laststatus=2
set pastetoggle=<F9>
set background=dark
highlight Search ctermbg=black ctermfg=white guifg=white guibg=black 
autocmd BufNewFile *.py,*.cc,*.sh,*.java exec ":call SetTitle()"
func SetTitle()
    if expand("%:e") == 'sh'
	    call setline(1, "##!/bin/bash")
		call setline(2, "#Author:ant")
		call setline(3, "#Blog:https://www.cnblogs.com/ant-colonies/")
		call setline(4, "#Time:".strftime("%F %T"))
		call setline(5, "#Name:".expand("%"))
		call setline(6, "#Version:V1.0")
		call setline(7, "#Discription:This is a test script.")
    endif
endfunc
相關文章
相關標籤/搜索