vim无插件配置

.vimrc

set nu                      " 显示行号
set smartindent
set lbr
set fo+=mB
set selection=inclusive
set wildmenu
set mousemodel=popup

" 制表符与缩进
set tabstop=4               " 设置软制表符宽度为4
set softtabstop=4           " 设置软制表符宽度为4
set shiftwidth=4            " 设置缩进的空格数为4
set autoindent              " 设置自动缩进:即每行的缩进值与上一行相等
set cindent                 " 使用 C/C++ 语言的自动缩进方式
set smarttab		    " 在行和段开始处使用制表符
set expandtab               " 空格代替制表符

" 取消的设置
set noerrorbells            " 出错时不要发出响声
set nobackup                " 取消备份文件
setlocal noswapfile          " 不创建交换文件
set noundofile               " 取消生成un文件

" 显示与主题
set scrolloff=3     " 光标移动到buffer的顶部和底部时保持3行距离  
set statusline=%F%m%r%h%w\ [FORMAT=%{&ff}]\ [TYPE=%Y]\ [POS=%l,%v][%p%%]\ %{strftime(\"%d/%m/%y\ -\ %H:%M\")}   "状态行显示的内容  
set laststatus=2    " 启动显示状态行(1),总是显示状态行(2)
set t_Co=256                 " 启用256色
"set guifont=Monospace\ 16   " 字体与大小
"set guifont=Consolas:h15    " 设置字体和字体大小
set guifont=Courier_New:h10:cANSI   " 设置字体
color ron     " 设置背景主题
"colorscheme desert
set ruler                   " 在状态栏显示光标的当前位置
set showmode                " 在底部显示,当前处于命令模式还是插入模式
set showcmd                 " 命令模式下,在底部显示,当前键入的指令
syntax on		            " 语法高亮
syntax enable
set cursorline              " 高亮当前行
set cursorcolumn	        " 高亮当前列
set showmatch               " 光标遇到括号时,自动高亮对应的另一个括号
set hlsearch                " 设置高亮显示搜索字符串
set incsearch
" 显示中文帮助
if version >= 603
	set helplang=cn
	set encoding=utf-8
endif

" 编码配置
set enc=utf-8
set fencs=utf-8,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936
set termencoding=utf-8
set encoding=utf-8
set fileencodings=ucs-bom,utf-8,cp936
set fileencoding=utf-8
" 语言设置
set langmenu=zh_CN.UTF-8
set helplang=cn

" 符号匹配
inoremap ( ()<Esc>i
inoremap { {}<Esc>i
inoremap [ []<Esc>i
inoremap " ""<Esc>i

" 代码补全 
set completeopt=preview,menu

"代码格式优化化

map <F6> :call FormartSrc()<CR><CR>

"定义FormartSrc()
func FormartSrc()
    exec "w"
    if &filetype == 'c'
        exec "!astyle --style=ansi -a --suffix=none %"
    elseif &filetype == 'cpp' || &filetype == 'hpp'
        exec "r !astyle --style=ansi --one-line=keep-statements -a --suffix=none %> /dev/null 2>&1"
    elseif &filetype == 'perl'
        exec "!astyle --style=gnu --suffix=none %"
    elseif &filetype == 'py'||&filetype == 'python'
        exec "r !autopep8 -i --aggressive %"
    elseif &filetype == 'java'
        exec "!astyle --style=java --suffix=none %"
    elseif &filetype == 'jsp'
        exec "!astyle --style=gnu --suffix=none %"
    elseif &filetype == 'xml'
        exec "!astyle --style=gnu --suffix=none %"
    else
        exec "normal gg=G"
        return
    endif
    exec "e! %"
endfunc
"结束定义FormartSrc

"新建.c,.h,.sh,.java文件,自动插入文件头 
autocmd BufNewFile *.cpp,*.[ch],*.sh,*.rb,*.java,*.py exec ":call SetTitle()" 
""定义函数SetTitle,自动插入文件头 
func SetTitle() 
	"如果文件类型为.sh文件 
	if &filetype == 'sh' 
		call setline(1,"\#!/bin/bash") 
		call append(line("."), "") 
    elseif &filetype == 'python'
        call setline(1,"#!/usr/bin/env python")
        call append(line("."),"# coding=utf-8")
	    call append(line(".")+1, "") 

    elseif &filetype == 'ruby'
        call setline(1,"#!/usr/bin/env ruby")
        call append(line("."),"# encoding: utf-8")
	    call append(line(".")+1, "")

"    elseif &filetype == 'mkd'
"        call setline(1,"<head><meta charset=\"UTF-8\"></head>")
	else 
		call setline(1, "/*************************************************************************") 
		call append(line("."), "	> File Name: ".expand("%")) 
		call append(line(".")+1, "	> Author: ") 
		call append(line(".")+2, "	> Mail: ") 
		call append(line(".")+3, "	> Created Time: ".strftime("%c")) 
		call append(line(".")+4, " ************************************************************************/") 
		call append(line(".")+5, "")
	endif
	if expand("%:e") == 'cpp'
		call append(line(".")+6, "#include <iostream>")
		call append(line(".")+7, "using namespace std;")
		call append(line(".")+8, "")
	endif
	if &filetype == 'c'
		call append(line(".")+6, "#include <stdio.h>")
		call append(line(".")+7, "#include <stdlib.h>")
		call append(line(".")+8, "")
	endif
	if expand("%:e") == 'h'
		call append(line(".")+6, "#ifndef _".toupper(expand("%:r"))."_H")
		call append(line(".")+7, "#define _".toupper(expand("%:r"))."_H")
		call append(line(".")+8, "#endif")
	endif
	if &filetype == 'java'
		call append(line(".")+6,"public class ".expand("%:r"))
		call append(line(".")+7,"")
	endif
	"新建文件后,自动定位到文件末尾
endfunc 
autocmd BufNewFile * normal G

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
windows下的Gvim7.2的配置文件 增加了"文件浏览"和Taglist等一系列件. 件也在压缩包内 "本配置文件包括如下内容: "设定窗口打开位置 winpos 300 60 "设定窗口起始大小 set lines=50 columns=118 " 设定默认解码及解决Vim终端模式中文乱码---顺序不要写错! let &termencoding=&encoding set encoding=utf-8 set langmenu=zh_CN.UTF-8 language message zh_CN.UTF-8 set fenc=utf-8 set fencs=usc-bom,utf-8,gb18030,gbk,gb2312,big5,cp936,euc-jp,euc-kr,latin1, set nocompatible source $vimruntime/vimrc_example.vim source $vimruntime/mswin.vim behave mswin "切换提示语言(解决调试窗口提示乱码) 设置帮助语言 文件中需要记录的行数 在处理未保存或只读文件的时候,弹出确认 与windows共享剪贴板 侦测文件类型 带有如下符号的单词不要被换行分割 语法高亮 高亮字符,让其不受100列限制 状态行颜色 把gui的工具栏去掉 把gui的菜单去掉 文件设置 不要备份文件(根据自己需要取舍) 不要生成swap文件,当buffer被丢弃的时候隐藏它 字符间入的像素行数目 增强模式中的命令行自动完成操作 在状态行上显示光标所在位置的行号和列号 命令行(在状态行下)的高度 允许backspace和光标键跨越行边界 可以在buffer的任何地方使用鼠标(类似office中在工作区双击鼠标定位) 启动的时候不显示那个援助索马里儿童的提示 在被分割的窗口间显示空白,便于阅读 打开文件时光标自动到上次退出该文件时的光标所在位置 搜索和匹配 显示状态行 Lookupfile 相关设置 继承前一行的缩进方式,特别适用于多行注释 为C程序提供自动缩进 TAB键宽度 统一缩进为4 换行 在行和段开始处使用制表符 可以用切换到上下左右的窗口中去 CTags的设定 Autocommands 自动补全 显示行号 只在下列文件类型被侦测到的时候显示行号,普通文本文件不显示 设置程序的运行和调试 快捷键F5和Ctrl-F5 更详细资料见文件.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值