vim配置文件


vim ——上古神器

萌新一枚,大佬請飄過~


關於vim教程爛大街了, 不多聊!
困擾很多小伙伴的時怎么配置vim作為自己最趁手的編輯器,今天就分享下個人的配置文件。
另外如果小伙伴寫python的話,建議了解一下neovim,因為python有一個代碼補全插件時neovim獨占的,vim心里也難受~


" __  ____   ____     _____ __  __ ____   ____ 
"|  \/  \ \ / /\ \   / /_ _|  \/  |  _ \ / ___|
"| |\/| |\ V /  \ \ / / | || |\/| | |_) | |    
"| |  | | | |    \ V /  | || |  | |  _ <| |___ 
"|_|  |_| |_|     \_/  |___|_|  |_|_| \_\\____|
"                                              
"


" ==========
" ===System 前五行使vim可以支持老版本
" ==========

" 不與vi兼容(采用vim自己的操作命令)
set nocompatible

filetype on
filetype indent on
filetype plugin on
filetype plugin indent on

" 支持使用鼠標
set mouse=a

" 使用utf-8編碼
set encoding=utf-8


" ===========================================================


" ==========
" ===Main code display
" ==========

" 顯示行號
set number

" 顯示光標所在的當前行行號,其他行都為相對於改行的相對行號。
set relativenumber
" set norelativenumber 前面有個no就是不這樣顯示的意思。

" 在狀態欄顯示光標當前位置(第幾行,第幾列)
set ruler

" 讓當前行有一條橫線(光標所在當前行高亮)。
set cursorline

" 打開語法高亮,自動識別代碼,使用多種顏色顯示。
syntax enable
syntax on

" 垂直滾動時,光標距離頂部/底部的位置(單位:行)
set scrolloff=5 

" 水平滾動時,光標距離行首/行尾的位置(單位:字符)。該配置在不拆行時比較有用。
" set sidescrolloff=15


" 開啟文件類型檢查,並且載入與該類型對應的縮進規則。
" 如:文件為.py文件,vim就會找python的縮進規則。
" ~/.vim/indent/python.vim

" 設置行寬,即一行顯示多少個字符。
" set textwidth=80

" 自動拆行,即太長的行分成幾行顯示。
" set wrap
" 關閉自動拆行。
" set nowrap

" 只有遇到指定的符號(如:空格、連詞號和其他標點符號),才拆行。即:不會在單詞內拆行。
" set linebreak

" 指定拆行出與編輯窗口的右邊緣之間空出的字符數。(強迫症需要)
" set wrapmargin=2





" ===========================================================


" ==========
" === Status/command bar
" ==========

" 是否顯示狀態行,0表示不顯示;1表示只在多窗口時顯示;2表示顯示。
set laststatus=2

" 在底部顯示,當前處於命令模式還是插入模式。
set showmode

" 輸入的命令顯示出來,看的清楚些。
set showcmd



" ===========================================================

" ==========
" Searching options
" ==========

" 光標遇到圓括號、方括號、大括號時,自動高亮對應的另一個圓括號、方括號和大括號。
set showmatch

" 搜索高亮
set hlsearch
" 因為上次搜索的內容在關閉vim后,重新打開,此句執行后將取消之前搜索的高亮。
exec "nohlsearch"

" 輸入搜索模式時,每輸入一個字符,就自動跳到第一個匹配的結果。
set incsearch

" 忽略大小寫
set ignorecase

" 如果同時開啟set ignorecase,那么對只有一個大寫字母的搜索詞,將大小寫敏感,其他情況都是大小寫不敏感。如搜Test時,將不匹配test;搜test時,將匹配Test.
set smartcase

" ===========================================================

" ==========
" === 縮進
" ==========

" 按下回車后下一行的縮進會自動跟上一行的縮進一致。
set autoindent

" 按下tab鍵時,vim顯示的空格數。
set tabstop=4

" 在文本上按下 >> (增加一級縮進)、<<(取消一級縮進)或者==(取消全部縮進)時,每一級的字符數。
set shiftwidth=4

" 由於tab鍵在不同的編輯器縮進不一致,該設置自動將tab轉為空格。
set expandtab

" tab轉為多少個空格。
set softtabstop=4


" ===========================================================


" ==========
" === Edit
" ==========

" 打開英語單詞的拼寫檢查。
set spell spelllang=en_us

" 不創建備份文件。默認情況下,文件保存時,會額外創建一個備份文件,它的文件名是在原文件名的末尾,再添加一個波浪號(~).
" set nobackup

" 不創建交換文件,交換文件主要用於系統崩潰時恢復文件,文件名開頭是"."、結尾是".swp"。
" set noswapfile

" 保留撤銷歷史。Vim 會在編輯時保存操作歷史,用來供用戶撤消更改。默認情況下,操作記錄只在本次編輯時有效,一旦編輯結束、文件關閉,操作歷史就消失了。打開這個設置,可以在文件關閉后,操作記錄保留在一個文件里面,繼續存在。這意味着,重新打開一個文件,可以撤銷上一次編輯時的操作。撤消文件是跟原文件保存在一起的隱藏文件,文件名以.un~開頭。
" set undofile

" 設置備份文件、交換文件、操作歷史文件的保存位置。
" 結尾的//表示生成的文件名帶有絕對路徑,路徑中用%替換目錄分隔符,這樣可以防止文件重名。
" set backupdir=~/.vim/.backup//
" set directory=~/.vim/.swp//
" set undodir=~/.vim/.undo//

" 自動切換工作目錄。這主要用在一個 Vim 會話之中打開多個文件的情況,默認的工作目錄是打開的第一個文件的目錄。該配置可以將工作目錄自動切換到,正在編輯的文件的目錄。
" set autochdir

" 出錯時,不要發出響聲。
" set noerrorbells

" 出錯時,發出視覺提示,通常是屏幕閃爍。
" set visualbell

" vim需要記住多少次操作記錄。
set history=1000

" 打開文件監視,如果在編輯過程中發生外部改變(比如被別的編輯器編輯了),就會發出提示。
" set autoread


" 如果行尾有多余的空格(包括 Tab 鍵),該配置將讓這些空格顯示成可見的小方塊。
set listchars=tab:»■,trail:■
set list

" 命令模式下,底部操作指令按下tab鍵自動補全。第一次按下tab鍵會提示所有匹配的操作指令的清單;第二次按下tab會一次選擇各個指令。
set wildmenu
set wildmode=longest:list,full

插件部分暫未梳理,以后有時間再說吧。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM