当前位置:网站首页>GVIM [III] [u vimrc configuration]
GVIM [III] [u vimrc configuration]
2022-07-07 14:10:00 【Stool flower*】
GVIM It can be modified by vimrc To flexibly configure your editor .
Here is my first vimrc:
" Set the background theme
"colo Candy
set nocompatible
" Vim with all enhancements
source $VIMRUNTIME/vimrc_example.vim
" Remap a few keys for Windows behavior
source $VIMRUNTIME/mswin.vim
set expandtab
"set tabstop=4
set guifont=Courier_New:h14
"set guifont=DejaVu\ Sans\ Mono\:h14
"colorscheme eighties " Theme Settings
" Set window size
winpos 100 100
set lines=25 columns=80
" Use the internal diff if available.
" Otherwise use the special 'diffexpr' for Windows.
if &diffopt !~# 'internal'
set diffexpr=MyDiff()
endif
function MyDiff()
let opt = '-a --binary '
if &diffopt =~ 'icase' | let opt = opt . '-i ' | endif
if &diffopt =~ 'iwhite' | let opt = opt . '-b ' | endif
let arg1 = v:fname_in
if arg1 =~ ' ' | let arg1 = '"' . arg1 . '"' | endif
let arg1 = substitute(arg1, '!', '\!', 'g')
let arg2 = v:fname_new
if arg2 =~ ' ' | let arg2 = '"' . arg2 . '"' | endif
let arg2 = substitute(arg2, '!', '\!', 'g')
let arg3 = v:fname_out
if arg3 =~ ' ' | let arg3 = '"' . arg3 . '"' | endif
let arg3 = substitute(arg3, '!', '\!', 'g')
if $VIMRUNTIME =~ ' '
if &sh =~ '\<cmd'
if empty(&shellxquote)
let l:shxq_sav = ''
set shellxquote&
endif
let cmd = '"' . $VIMRUNTIME . '\diff"'
else
let cmd = substitute($VIMRUNTIME, ' ', '" ', '') . '\diff"'
endif
else
let cmd = $VIMRUNTIME . '\diff'
endif
let cmd = substitute(cmd, '!', '\!', 'g')
silent execute '!' . cmd . ' ' . opt . arg1 . ' ' . arg2 . ' > ' . arg3
if exists('l:shxq_sav')
let &shellxquote=l:shxq_sav
endif
endfunction
" Auto full screen
"autocmd GUIEnter * simalt ~x
" Set encoding "
set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936
set termencoding=utf-8
set encoding=utf-8
source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim
" According to the line Numbers "
set nu
set number
" Highlight current line "
"set cursorline
"set cul "cursorline Abbreviated form "
" Highlight the current column "
"set cursorcolumn
"set cuc "cursorcolumn Abbreviated form "
" Enable mouse "
set mouse=a
set selection=exclusive
set selectmode=mouse,key
" Show bracket matching "
set showmatch
" Set indent "
" Set up Tab The length is 2 Space "
set tabstop=2
" Set the auto indent length to 2 Space "
set shiftwidth=2
" Inherit the indent of the previous line , For multiline comments "
set autoindent
" Set paste mode "
" Show spaces and tab The key in Vim When pasting with the right mouse button in, many indents and spaces will appear at the beginning of the line , adopt set paste You can paste content in insert mode without any format deformation 、 Random indentation and other problems ."
set paste
"vimrc Show spaces and tab key "
"Vim By default, the editor does not display tab And space characters , The following display effects can be obtained through the following configuration , Easy to locate input errors ."
set listchars=tab:>-,trail:-
" Set to load automatically when files are changed
set autoread
"quickfix Pattern
autocmd FileType c,cpp map <buffer> <leader><space> :w<cr>:make<cr>
" Code completion
set completeopt=preview,menu
" Save automatically
set autowrite
" Set the number of context lines
set so=1
" Syntax highlighting
set syntax=on
" And windows Share clipboard
set clipboard+=unnamed
" Cancel automatic backup and generation swp file
set noundofile
set nobackup
set nowb
set noswapfile
" by C The program provides automatic indentation
set smartindent
" When it's launched, it doesn't show the hint of helping Somali children
set shortmess=atI
" Ignore case
"set ic(ignorecase Abbreviation ) Ignore case
"set noic(noignorecase Abbreviation ) Don't ignore case
" What the status line shows
"set statusline=%F%m%r%h%w\ [FORMAT=%{&ff}]\ [TYPE=%Y]\ [POS=%l,%v][%p%%]\ %{strftime(\"%d/%m/%y\ -\ %H:%M\")}
set statusline=\ [POS=%l,%v][%p%%]\ %{strftime(\"20%y/%m/%d\ -\ %H:%M\")}
" Open file type detection , Only by adding this sentence can we use intelligence to complete
set completeopt=longest,menu
" plug-in unit "
set nocompatible " Remove VIM Uniformity , must "
filetype off " must "
" Settings include vundle Runtime path related to initialization "
set rtp+=$VIM/vimfiles/bundle/Vundle.vim/
call vundle#begin('$VIM/vimfiles/bundle/')
" Enable vundle Management plug-in , must "
Plugin 'VundleVim/Vundle.vim'
" Add other plug-ins here , The installed plug-ins need to be placed in vundle#begin and vundle#end Between "
" install github The plug-in format on is Plugin ' user name / Plugin warehouse name '"
" Bracket color alignment
Plugin 'kien/rainbow_parentheses.vim'
Plugin 'https://github.com/schmich/vim-guifont'
" Catalog
Plugin 'preservim/nerdtree'
Plugin 'preservim/nerdcommenter'
call vundle#end()
filetype plugin indent on " load vim Built in scripts related to the syntax and file type of the plug-in , must "
autocmd VimEnter * RainbowParenthesesToggle
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Automatic loading NERDTree
"autocmd VimEnter * NERDTree
" Set up NerdTree
map <F3> :NERDTreeMirror<CR>
map <F3> :NERDTreeToggle<CR>
Basically, every command is annotated , Let's look at it in combination with the notes , I don't need to comment out some commands , You can also cancel the comment to see what the function is .
" plug-in unit " At first, we added two GVIM plug-in unit ,GVIM The functions of plug-ins are very complete , You can install different plug-ins according to your needs . I have two installed here :NERDTree and rainbow_parentheses.NERDTree It's a file directory ,rainbow_parentheses Is the bracket color alignment . As shown below :
Installation method :
Gvim Tree directory plug-in NERDTree Installation method
vim plug-in unit ——rainbow
vim plug-in unit : rainbow_parentheses[ Brackets highlight ]
The files in the blog are from my github Download from .
Other blogs in this series
边栏推荐
- Did login metamask
- Xshell connection server changes key login to password login
- Navicat run SQL file import data incomplete or import failed
- PHP中用下划线开头的变量含义
- SSRF vulnerability file pseudo protocol [netding Cup 2018] fakebook1
- Flink | multi stream conversion
- Es log error appreciation -limit of total fields
- Deep understanding of array related problems in C language
- Common response status codes
- requires php ~7.1 -&gt; your PHP version (7.0.18) does not satisfy that requirement
猜你喜欢
最长上升子序列模型 AcWing 1014. 登山
. Net core about redis pipeline and transactions
Leecode3. Longest substring without repeated characters
【立体匹配论文阅读】【三】INTS
Indoor ROS robot navigation commissioning record (experience in selecting expansion radius)
高等數學---第八章多元函數微分學1
Excerpt from "misogyny: female disgust in Japan"
Best practice | using Tencent cloud AI willingness to audit as the escort of telephone compliance
566. 重塑矩阵
Wired network IP address of VMware shared host
随机推荐
566. 重塑矩阵
wpf dataGrid 实现单行某个数据变化 ui 界面随之响应
Is the compass stock software reliable? Is it safe to trade stocks?
为租客提供帮助
MySQL "invalid use of null value" solution
Oracle advanced (V) schema solution
118. 杨辉三角
Co create a collaborative ecosystem of software and hardware: the "Joint submission" of graphcore IPU and Baidu PaddlePaddle appeared in mlperf
Build a secure and trusted computing platform based on Kunpeng's native security
AutoCAD - how to input angle dimensions and CAD diameter symbols greater than 180 degrees?
IP and long integer interchange
The reason why data truncated for column 'xxx' at row 1 appears in the MySQL import file
[high frequency interview questions] difficulty 2.5/5, simple combination of DFS trie template level application questions
【网络安全】sql注入语法汇总
Realization of search box effect [daily question]
requires php ~7.1 -&gt; your PHP version (7.0.18) does not satisfy that requirement
Excuse me, when using Flink SQL sink data to Kafka, the execution is successful, but there is no number in Kafka
最长上升子序列模型 AcWing 1012. 友好城市
Cargo placement problem
docker部署oracle