""""""""""""""""""""""""""""""""""""""""""""""
" Author: Xiao_Peng "
" Mail : 466423955@qq.com "
""""""""""""""""""""""""""""""""""""""""""""""
"显示行号
set nu
"显示命令
set showcmd
"显示控制条
set ruler
"关闭vi兼容模式
set nocompatible
"状态行显示内容
set statusline=%F%m%r%h%w\ [FORMAT=%{&ff}]\ [TYPE=%Y]\ [POS=%l,%v][%p%%]\ %{strftime(\"%d/%m/%y\ -\ %H:%M\")}
"启动显示状态行(1),总是显示状态行(2)
set laststatus=1
"命令行(在状态行下)的高度,设置为1
set cmdheight=1
"设置配色方案
"colorscheme murphy
"字体
if (has("gui_running"))
set guifont=Bitstream\ Vera\ Sans\ Mono\ 10
endif
"""""""""""""新文件标题"""""""""""""""""""""
"新建.c,.h,.sh,.java文件,自动插入文件头
autocmd BufNewFile *.cpp,*.[ch],*.sh,*.java exec ":call SetTitle()"
"定义函数SetTitle,自动插入文件头
func SetTitle()
"如果文件类型为.sh文件
if &filetype == 'sh'
call setline(1,"\#########################################################################")
call append(line("."), "\# File Name: ".expand("%"))
call append(line(".")+1, "\# Author: Xiao_Peng")
call append(line(".")+2, "\# mail: 466423955@qq.com")
call append(line(".")+3, "\# Created Time: ".strftime("%c"))
call append(line(".")+4, "\#########################################################################")
call append(line(".")+5, "\#!/bin/bash")
call append(line(".")+6, "")
else
call setline(1, "/*************************************************************************")
call append(line("."), " > File Name: ".expand("%"))
call append(line(".")+1, " > Author: Xiao_Peng")
call append(line(".")+2, " > Mail: 466423955@qq.com ")
call append(line(".")+3, " > Created Time: ".strftime("%c"))
call append(line(".")+4, " ************************************************************************/")
call append(line(".")+5, "")
endif
if &filetype == 'cpp'
call append(line(".")+6, "#include <algorithm>")
call append(line(".")+7, "#include <iostream>")
call append(line(".")+8, "#include <iomanip>")
call append(line(".")+9, "#include <cstring>")
call append(line(".")+10, "#include <cstdlib>")
call append(line(".")+11, "#include <climits>")
call append(line(".")+12, "#include <sstream>")
call append(line(".")+13, "#include <fstream>")
call append(line(".")+14, "#include <cstdio>")
call append(line(".")+15, "#include <string>")
call append(line(".")+16, "#include <vector>")
call append(line(".")+17, "#include <queue>")
call append(line(".")+18, "#include <cmath>")
call append(line(".")+19, "#include <stack>")
call append(line(".")+20, "#include <map>")
call append(line(".")+21, "#include <set>")
call append(line(".")+22, "")
call append(line(".")+23, "using namespace std;")
call append(line(".")+24, "")
call append(line(".")+25, "int main()")
call append(line(".")+26, "{")
call append(line(".")+27, " return 0;")
call append(line(".")+28, "}")
endif
if &filetype == 'c'
call append(line(".")+6, "#include<stdio.h>")
call append(line(".")+7, "int main()")
call append(line(".")+8, "{")
call append(line(".")+9, " return 0;")
call append(line(".")+10, "}")
endif
"新建文件后,自动定位到文件末尾
autocmd BufNewFile * normal G
endfunc
"映射全选 ctrl+a
map <C-A> ggVG
"映射复制 ctrl+c
map <C-c> "+y
"映射粘贴 ctrl+v
map <C-v> "+p
"C,C++ 按F9编译运行
map <F9> :call CompileRunGcc()<CR>
func! CompileRunGcc()
exec "w"
if &filetype == 'c'
exec "!g++ % -o %<"
exec "! ./%<"
elseif &filetype == 'cpp'
exec "!g++ % -o %<"
exec "! ./%<"
elseif &filetype == 'java'
exec "!javac %"
exec "!java %<"
elseif &filetype == 'sh'
:!./%
endif
endfunc
"代码补全
set completeopt=preview,menu
"从不备份
set nobackup
"突出显示当前行
set cursorline
set nocompatible
"语法高亮
"set syntax=on
"去掉输入错误的提示声音
set noeb
"在处理未保存或只读文件的时候,弹出确认
set confirm
"自动缩进
set autoindent
set cindent
"Tab键的宽度
set tabstop=4
"统一缩进为4
set softtabstop=4
set shiftwidth=4
"不要用空格代替制表符
set noexpandtab
"在行和段开始处使用制表符
set smarttab
"历史记录数
set history=50
"禁止生成临时文件
set nobackup
set noswapfile
"搜索忽略大小写
set ignorecase
"搜索逐字符高亮
set hlsearch
set incsearch
"行内替换
set gdefault
"在被分割的窗口间显示空白,便于阅读
set fillchars=vert:\ ,stl:\ ,stlnc:\
"高亮显示匹配的括号
set showmatch
"匹配括号高亮的时间(单位是十分之一秒)
set matchtime=1
"光标移动到buffer的顶部和底部时保持3行距离
set scrolloff=3
跟大牛学习的vim设置
最新推荐文章于 2024-07-29 18:00:00 发布