"关才兼容模式

set nocompatible

"模仿快捷键,如:ctrt+A 全选、Ctrl+C复制、 Ctrl+V 粘贴等

source $VIMRUNTIME/vimrc_example.vim

source $VIMRUNTIME/mswin.vim

behave mswin

"gvim字体设置

set guifont=新宋体:h14:cGB2312

"gvim 内部编码

set encoding=utf-8

"当前编辑的文件编码

set fileencoding=utf-8

"gvim打开支持编码的文件

set fileencodings=ucs-bom,utf-8,gbk,cp936,gb2312,big5,euc-jp,euc-jp,euc-kr,latin1

"解决consle输出乱码

language messages zh_CN.UTF-8

"解决菜单乱码

source $VIMRUNTIME/delmenu.vim

source $VIMRUNTIME/menu.vim

"设置终端编码为gvim内部编码encoding

let &termencoding=&encoding

" 防止特殊符号无法正常显示

set ambiwidth=double

个空格

set sw=4

个字符

set ts=4

"编辑时将所有tab替换为空格

set et

个空格了

set smarttab

"不生成备份文件,如~index.html

set nobackup

"开启行号标记

set number

"配色方案为desert

colo desert

"关才上侧工具栏

set guioptions-=T

"关才右侧滚动条

"set guioptions-=r

"开启自动缩进

set autoindent

"代码自动补全  (按快捷键Ctrl+X+O)

set autoindent

autocmd FileType python set omnifunc=pythoncomplete#Complete

autocmd FileType javascrīpt set omnifunc=javascrīptcomplete#CompleteJS

autocmd FileType html set omnifunc=htmlcomplete#CompleteTags

autocmd FileType css set omnifunc=csscomplete#CompleteCSS

autocmd FileType xml set omnifunc=xmlcomplete#CompleteTags

autocmd FileType php set omnifunc=phpcomplete#CompletePHP

autocmd FileType c set omnifunc=ccomplete#Complete

"代码折叠

"用空格键来开关折叠(说明西方“"”后面的内容为注释,不会被VIM所识别)

set foldenable

set foldmethod=indent

nnoremap <space> @=((foldclosed(line('.')) < 0) ? 'zc' : 'zo')<CR>

"实现括号和引号自动补全

inoremap ( ()<Esc>i

inoremap [ []<Esc>i

inoremap { {<CR>}<Esc>O

autocmd Syntax html,vim inoremap < <lt>><Esc>i| inoremap > <c-r>=ClosePair('>')<CR>

inoremap ) <c-r>=ClosePair(')')<CR>

inoremap ] <c-r>=ClosePair(']')<CR>

inoremap } <c-r>=CloseBracket()<CR>

inoremap " <c-r>=QuoteDelim('"')<CR>

inoremap ' <c-r>=QuoteDelim("'")<CR>

function ClosePair(char)

if getline('.')[col('.') - 1] == a:char

return "\<Right>"

else

return a:char

endif

endf

function CloseBracket()

if match(getline(line('.') + 1), '\s*}') < 0

return "\<CR>}"

else

return "\<Esc>j0f}a"

endif

endf

function QuoteDelim(char)

let line = getline('.')

let col = col('.')

if line[col - 2] == "\\"

"Inserting a quoted quotation mark into the string

return a:char

elseif line[col - 1] == a:char

"Escaping out of the string

return "\<Right>"

else

"Starting a string

return a:char.a:char."\<Esc>i"

endif

endf

gvim 编辑器配置的更多相关文章

  1. 代码编辑器[0] -> Vim/gVim[0] -> 基于 Python 的 gVim 环境配置(Windows)

     环境配置 / Environment Setup 基于Python开发的 gVim 环境配置(Windows) 使用方式参考 Vim 的使用. 1 基于vundle进行配置 Vim有多个扩展管理器, ...

  2. Ubuntu下VIM(GVIM)环境配置

    GVIM安装( Ubuntu自带VIM ): 通过应用商店安装或者通过以下安装. sudo apt-get install vim-gnome GVIM配置: 在 家目录 ( ~/ ) 下建立 .vi ...

  3. ASP.NET网站使用Kindeditor富文本编辑器配置步骤

    1. 下载编辑器 下载 KindEditor 最新版本,下载页面: http://www.kindsoft.net/down.php 2. 部署编辑器 解压 kindeditor-x.x.x.zip ...

  4. windows下GVIM的配置(vimrc)

    学习python时想要在gvim中配置python的编译环境,网上找到一个比较好用的vimrc配置,保存下来以备下次有需要. set encoding=utf-8 set termencoding=u ...

  5. Vim:gvim安装配置(windows)

    Vim:gvim安装配置(windows) 一.gvim的特点: vim要求全部键盘操作,而gvim可以使用鼠标进行可视化操作,即gvim是vim的图形化界面: 二.gvim安装: 下载地址:http ...

  6. 关于GVIM的配置。

    最近开始考虑从常用的 Dev-Cpp 和 Visual Studio 开发环境中转到gvim+gcc+gdb. 我一直觉得IDE很好方便,不是很明白别人这样的配置.但还是开始有意识的去尝试更换环境. ...

  7. gVim编辑器 操作篇

    gVim是一款强大的编辑器,可以满足大部分语言的编程需要.尤其是其自带的模板定制功能对于Verilog来说非常受用.然而gVim有很多操作是不同于其他编辑器的,这让很多初学者望而却步,因此,本文将gV ...

  8. gvim编码配置知识

    配置 .vimrc 解决 Vim / gVim 在中文 Windows 下的字符编码问题     Vim / gVim 在中文 Windows 下的字符编码有两个问题: 默认没有编码检测功能 如果一个 ...

  9. sublime 编辑器配置和构建检查

    sublime3插件 安装node包 jscs npm install jscs -g jshint npm install jshint -g csscomb npm install csscomb ...

随机推荐

  1. redis 查看所有键值

    zb@zb-computer:/home/wwwroot/default/lion/Admin$ /usr/local/redis/bin/redis-cli 127.0.0.1:6379> k ...

  2. c# 深拷贝与浅拷贝的区别分析及实例

    浅拷贝(影子克隆):只复制对象的基本类型,对象类型,仍属于原来的引用. 深拷贝(深度克隆):不紧复制对象的基本类,同时也复制原对象中的对象.就是说完全是新对象产生的. 深拷贝是指源对象与拷贝对象互相独 ...

  3. [POI2008]BLO-Blockade

    https://www.luogu.org/problem/show?pid=3469 题目描述 There are exactly  towns in Byteotia. Some towns ar ...

  4. 计数排序Counting sort

    注意与基数排序区分,这是两个不同的排序 计数排序的过程类似小学选班干部的过程,如某某人10票,作者9票,那某某人是班长,作者是副班长 大体分两部分,第一部分是拉选票和投票,第二部分是根据你的票数入桶 ...

  5. RabbitMQ与Spring集成

    RabbitMQ服务端安装: https://blog.csdn.net/hzw19920329/article/details/53156015 与Spring集成 https://www.cnbl ...

  6. Chrome profile manager

    由于Firefox有profile manager这么一说,所以自然联想到chrome应该也有. 默认chrome的profile manager被禁止了. 1. chrome://flags 2. ...

  7. lambda表达式的应用例子和JavaSE 8特性

    在JavaSE 8 引入了lambda表达式,lambda表达式的引入带来的好处是:通过语法上的改进,减少开发人员需要编写和维护的代码数量.这个在下面使用和不使用lambda的对比中可以清晰看出来. ...

  8. 【BZOJ2815】【ZJOI2012】灾难 [LCA]

    灾难 Time Limit: 10 Sec  Memory Limit: 128 MB[Submit][Status][Discuss] Description 阿米巴是小强的好朋友.  阿米巴和小强 ...

  9. vue装逼神器简述

    主要是分享下用vuejs开发项目过程中遇到的问题,vuejs开发的优势和需要注意的地方. 项目主要页面:主页,最新,分类,分类列表,详情页,结果页,斗图(列表,制作页) 效果图: 地址:https:/ ...

  10. Java多线程学习(二)synchronized关键字(2)

    转载请备注地址:https://blog.csdn.net/qq_34337272/article/details/79670775 系列文章传送门: Java多线程学习(一)Java多线程入门 Ja ...