set nocompatible " be iMproved, required
filetype off " required

" set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
" alternatively, pass a path where Vundle should install plugins
"call vundle#begin('~/some/path/here')

" let Vundle manage Vundle, required
Plugin 'VundleVim/Vundle.vim'

" The following are examples of different formats supported.
" Keep Plugin commands between vundle#begin/end.
" plugin on GitHub repo
Plugin 'tpope/vim-fugitive'
" plugin from http://vim-scripts.org/vim/scripts.html
" Plugin 'L9'
" Git plugin not hosted on GitHub
"Plugin 'git://git.wincent.com/command-t.git'
" git repos on your local machine (i.e. when working on your own plugin)
"Plugin 'file:///home/gmarik/path/to/plugin'
" The sparkup vim script is in a subdirectory of this repo called vim.
" Pass the path to set the runtimepath properly.
Plugin 'rstacruz/sparkup', {'rtp': 'vim/'}
" Install L9 and avoid a Naming conflict if you've already installed a
" different version somewhere else.
" Plugin 'ascenator/L9', {'name': 'newL9'}

Plugin 'mhinz/vim-startify'

Plugin 'aperezdc/vim-template'
Plugin 'thinca/vim-quickrun'
Plugin 'jiangmiao/auto-pairs'

Plugin 'Chiel92/vim-autoformat'

"" Theme Plugin
Plugin 'sjl/badwolf'

" All of your Plugins must be added before the following line
call vundle#end() " required
filetype plugin indent on " required
" To ignore plugin indent changes, instead use:
"filetype plugin on
"
" Brief help
" :PluginList - lists configured plugins
" :PluginInstall - installs plugins; append `!` to update or just :PluginUpdate
" :PluginSearch foo - searches for foo; append `!` to refresh local cache
" :PluginClean - confirms removal of unused plugins; append `!` to auto-approve removal
"
" see :h vundle for more details or wiki for FAQ
" Put your non-Plugin stuff after this line

"" display settings
set t_Co=256
syntax enable
syntax on
set background=dark
colorscheme badwolf

set cursorline
set cursorcolumn
set number

" file encoding
set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1

" enable mouse
set mouse=a

" indent
set expandtab
set tabstop=4
set softtabstop=4
set shiftwidth=4

" fold
set nofoldenable
set foldmethod=syntax

" search
set hlsearch
set incsearch

" case
set ignorecase
set smartcase

" keep 200 lines of command line history
set history=200

" Show a few lines of context around the cursor.
" Note that this makes the text scroll
" if you mouse-click near the start or end of the window.
set scrolloff=5
set sidescrolloff=5

" display completion matches in a status line
set wildmenu
" display incomplete commands
set showcmd

" Allow backspacing over everything in insert mode.
set backspace=eol,start,indent

" Use ; as <Leader>
let mapleader = ";"

" Quick select whole file
nnoremap <Leader>a ggVG
" Quick save or quit file
nnoremap <Leader>w :w<CR>
nnoremap <Leader>q :q<CR>
nnoremap <Leader>fq :q!<CR>

" Copy to and paste from system clipboard
nnoremap <Leader>y "+y
nnoremap <Leader>p "+p
nnoremap <Leader>fz ggVG"+y

" vim smart autocomplete
set wildmenu

" man the information
nnoremap <Leader>man :Man <cword><CR>

"""" Plugin settings
" vim-startify
let g:startify_files_number = 20

" vim-template
let g:templates_no_autocmd=1
let g:templates_directory='~/.vim/templates'
nnoremap <Leader>tp2 :Template tp2<CR>

" vim-quickrun
let g:quickrun_config = {
\ "_" : {
\ "outputter" : "message",
\ },
\}

let g:quickrun_no_default_key_mappings = 1
nmap <F5> <Plug>(quickrun)

" YouCompleteMe
let g:ycm_collect_identifiers_from_tags_files=1
set tags+=~/.tags/stdcpp.tags
let g:ycm_global_ycm_extra_conf='~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py'
let g:ycm_complete_in_comments=1
let g:ycm_cache_omnifunc=0
let g:ycm_seed_identifiers_with_syntax=1
set completeopt-=preview

" Airline
let g:airline_theme='luna'
let g:airline_powerline_fonts = 1
if !exists('g:airline_symbols')
let g:airline_symbols = {}
endif
let g:airline_symbols.linenr = '&'

" AutoFormat
let g:formatdef_my_cpp = '"astyle --style=google"'
let g:formatters_cpp = ['my_cpp']
"au BufWrite * :Autoformat
nmap <Leader>fmt <Plug>(Autoformat)

""" My Own Function
func! CppDebug()
exe "silent !g++ -O0 -std=c++14 -g % -o %<"
exe "!gdb %<"
exe "silent !rm -rf %<"
endfunc
nnoremap <Leader>db :call CppDebug()<CR>

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

func! Run()
exe "silent w"
exe "silent !g++ % -o %<"
exe "!./%<"
exe "silent !rm %<"
endf

vim.rc配置(deepin)的更多相关文章

  1. [转] vim自定义配置 和 在ubnetu中安装vim

    Ubuntu 12.04安装vim和配置   问题: ubuntu默认没有安装vim,出现: jyg@ubuntu:~$ vim test.cThe program 'vim' can be foun ...

  2. 为了让vi命令也可以使用vim的配置,需要修改 vi /etc/bashrc 增加一行 alias vi='vim'此时,经过上面配置已经可以显示语法高亮了

    为了让vi命令也可以使用vim的配置,需要修改 vi /etc/bashrc 增加一行 aliasvi='vim'此时,经过上面配置已经可以显示语法高亮了

  3. 我的VIM.rc

    我的VIM.rc """""""""""""""& ...

  4. linux环境下Vim的配置

    原文链接:http://blog.chinaunix.net/uid-26826958-id-3272375.html  (本文转自此链接中的部分内容,但做了适当修改) 安装vim命令:sudo ap ...

  5. windows下LINUX模拟终端Cypwin以及Vim的配置使用

    Cypwin的安装 从官网下载相应版本后,直接安装. 官网地址:Cypwin 安装过程中可以选择相应的Packages,我们需要安装的Vim就需要在这一步中选择相应的包. Cypwin的使用 纯命令行 ...

  6. VIM简单配置

    配置vim配置 编辑配置文件 feng@mint ~ $ vim ~/.vimrc 配置如下 主要配置为自动换行,设置行号,设置tab键为4个空格,同时将tab键自动转换成空格 set autoind ...

  7. macOS中Vim基本配置,颜色主题/语法/indent设置

    macOS中Vim基本配置 Vim的初始化配置 .vimrc 存放位置 macOS 环境下 vim 的初始化配置文件为 .vimrc , 通常有两个(系统版本和用户版本),一个位于 /usr/shar ...

  8. vim基本配置备份

    我的vim基本配置如下,在这里作个备份: set background=light syntax on set number set smartindent set expandtab set tab ...

  9. Linux - vim安装 配置与使用

    一 Vim 简单介绍 曾经一直用vi,近期開始使用 vim,以下将两者做一下比較. vi和vim都是word=%E5%A4%9A%E6%A8%A1&fr=qb_search_exp&i ...

随机推荐

  1. Python中几个必须知道的函数

    Python中自带了几个比较有意思的函数,一般在面试或者笔试基础的时候会问到,其中3个就是map.filter.reduce函数. 1.map(function, iterable) 它第一个要传的元 ...

  2. Java手写简单Linkedlist一(包括增加,插入,查找,toString,remove功能)

    @Java300 学习总结 一.自定义节点 LinkList底层为双向链表.特点为查询效率低,但增删效率高,线程不安全. 链表数据储存在节点,且每个节点有指向上个和下个节点的指针. 创建ggLinke ...

  3. DataTime.Now.Ticks

    getTime public long getTime() 返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数. 返回: 自 1970 年 1 月 1 ...

  4. MQTT协议探究(一)

    1 准备阶段 MQTT客户端:https://www.cnblogs.com/linzhanfly/p/9923577.html WireShark MQTT服务器(iot.eclipse.org) ...

  5. javascript中用&&跟||来简化if{}else{}的写法

    原文:javascript中用&&跟||来简化if{}else{}的写法 目录 javascript中用&&跟||来简化if{}else{}的写法 1. if else ...

  6. Redis 的订阅发布(PUB/SUB)示例

    ConnectionMultiplexer redis = ConnectionMultiplexer.Connect("127.0.0.1"); ISubscriber sub ...

  7. 事件处理程序EventUtil

    /**********事件处理程序***********EventUtil.js*浏览器兼容,<高三>13章 P354*2014-12-8************************* ...

  8. Idea+Maven部署打包JavaFX项目遇到的坑

    用Idea写了一个JavaFX项目,创建artifacts,build artifacts,运行build出来的exe可执行文件时总是遇到 class not found的错误,如下图 一开始根据提示 ...

  9. [转载]PyTorch中permute的用法

    [转载]PyTorch中permute的用法 来源:https://blog.csdn.net/york1996/article/details/81876886 permute(dims) 将ten ...

  10. oracle中查询表中的触发器,关闭启用操作

    1.查询指定表中有哪些触发器 select * from all_triggers WHERE table_name='表名' 2.禁用指定表中所有的触发器 alter table table_nam ...