美文网首页
vim 配置

vim 配置

作者: xiaodongod | 来源:发表于2021-01-05 13:42 被阅读0次
vi ~/.vimrc

具体配置如下:

"""""""""""""""""""""
" => 全局配置
"""""""""""""""""""""
"关闭兼容模式
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)
"有6种折叠方法:
"manual 手工定义折叠
"indent 更多的缩进表示更高级别的折叠
"expr    用表达式来定义折叠
"syntax 用语法高亮来定义折叠
"diff    对没有更改的文本进行折叠
"marker 对文中的标志进行折叠
set foldmethod=manual

"设置折叠区域的宽度
"如果不为0,则在屏幕左侧显示一个折叠标识列
"分别用“-”和“+”来表示打开和关闭的折叠。
set foldcolumn=0

"设置折叠层数为3
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>
"""""""""""""""""""""
" => 文字处理 
"""""""""""""""""""""
"使用空格来替换Tab
set expandtab

"设置所有的Tab和缩进为4个空格
set tabstop=4

"设定 << 和 >> 命令移动时的宽度为4
set shiftwidth=4

"使得按退格键时可以一次删掉4个空格
set softtabstop=4

set smarttab

"缩进,自动缩进(继承前一行的缩进)
"set autoindent命令关闭自动缩进,是下面配置的缩写。
"可使用autoindent命令的简写,即“:set ai”和“:set noai”。
"还可以使用“ :set ai sw=4”在一个命令中打开缩进并设置缩进级别。
set ai

"智能缩进
set si

"自动换行
set wrap

"设置软宽度
set sw=4
"""""""""""""""""""""
" => Vim 界面 
"""""""""""""""""""""
"Turn on WiLd menu
set wildmenu

"显示标尺
set ruler

"设置命令行的高度
set cmdheight=1

"显示行数
"set nu

"Do not redraw, when running macros.. lazyredraw
set lz

"设置退格
set backspace=eol, start, indent

"Bbackspace 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
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
"粘贴不换行问题的解决方法

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:xiaodongio")
        call setline(3, "#Blog:https://www.jianshu.com/u/daf7568d7c8f")
        call setline(4, "#Time:".strftime("%F %T"))
        call setline(5, "#Name:".expand("%"))
        call setline(6, "#Version:V1.0")
        call setline(7, "#Description:This is a test script.")
    endif
endfunc

相关文章

网友评论

      本文标题:vim 配置

      本文链接:https://www.haomeiwen.com/subject/tunioktx.html