为什么用Vim

重新调配vim,追求尽量简单些。

安装

官网下载

PC: MS-DOS and MS-Windows下的

For modern MS-Windows systems (starting with XP) you can simply use the executable installer:gvim80.exe

双击执行,放到合适的目录。

不过这个貌似是没有编译的,有些插件不能完全用,最好再在github这里下载gvim_8.0.1763_x64.zip解压到原来安装好的目录里去。

插件管理vim-plug

vim-plug

  • 直接复制这个链接里的plug.vim的代码,到D:\Editor\Vim\vim80\autoload下,创建plug.vim,粘贴代码,就可以了。

接下来就是vim-plug的用法了。对了,用vim-plug的原因是它支持异步,下载管理更快。

D:\Editor\Vim_vimrc中写入

call plug#begin('D:\Editor\Vim\vimfiles\plug')

"状态栏的例子
Plug 'bling/vim-airline'
Plug 'vim-airline/vim-airline-themes' call plug#end() "关于状态栏的小配置
"Powerline setting
let g:airline_theme='molokai'
let g:airline_powerline_fonts = 1

保存。

打开gvim.exe,运行:PlugInstall安装好插件后,就能使用了这些插件了。

更多插件

必备插件

"美化
Plug 'flazz/vim-colorschemes'
"状态栏
Plug 'bling/vim-airline'
Plug 'vim-airline/vim-airline-themes'
"一只说话的狗
Plug 'mhinz/vim-startify'
"主题选择
Plug 'tomasr/molokai'
Plug 'morhetz/gruvbox' "文件树
Plug 'scrooloose/nerdtree' "文件搜索
Plug 'Yggdroot/LeaderF' "异步语法检查
Plug 'w0rp/ale' "括号补全
Plug 'jiangmiao/auto-pairs' "注释代码工具
"\cc注释当前行 \cu 撤销注释当前行 \cs sexily注释 \cA 行尾注释,切换成输入模式
Plug 'scrooloose/nerdcommenter' "编译运行
"F4 添加作者信息,更新作者信息
"F9 一键保存、编译、连接存并运行
"Ctrl + F9 一键保存并编译
"Ctrl + F10 一键保存并连接
"F8 编译调试(仅限于单文件)(gdb)
Plug 'Svtter/ACM.vim' "自动补全
Plug 'ervandew/supertab' "自动弹出提示
Plug 'vim-scripts/AutoComplPop'

我的_vimrc文件

github文件地址,避免有更新

""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" PlugList "
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
call plug#begin('D:\Editor\Vim\vimfiles\plug') "美化
Plug 'flazz/vim-colorschemes'
Plug 'bling/vim-airline'
Plug 'vim-airline/vim-airline-themes'
Plug 'mhinz/vim-startify'
"theme color
Plug 'tomasr/molokai'
Plug 'morhetz/gruvbox' Plug 'scrooloose/nerdtree'
"文件搜索
Plug 'Yggdroot/LeaderF'
"Plug 'scrooloose/syntastic'
Plug 'w0rp/ale'
"括号补全
Plug 'jiangmiao/auto-pairs'
"注释代码工具
"\cc注释当前行 \cu 撤销注释当前行 \cs sexily注释 \cA 行尾注释,切换成输入模式
Plug 'scrooloose/nerdcommenter'
"编译运行
"F4 添加作者信息,更新作者信息
"F9 一键保存、编译、连接存并运行
"Ctrl + F9 一键保存并编译
"Ctrl + F10 一键保存并连接
"F8 编译调试(仅限于单文件)(gdb)
Plug 'Svtter/ACM.vim' "
Plug 'tell-k/vim-autopep8' "自动补全
Plug 'ervandew/supertab'
"自动弹出
Plug 'vim-scripts/AutoComplPop' call plug#end() """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" plugin settings "
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" "set my leader
let mapleader=","
"let mapleader=";"
"let mapleader="\<Space>" set nocompatible " Initialize plugin system
filetype plugin indent on
"加强版状态栏
let g:airline_theme='molokai'
"使用powerline打过补丁的字体
let g:airline_powerline_fonts = 1 "关闭状态显示空白符号计数,这个对我用处不大"
let g:airline#extensions#whitespace#enabled = 0
let g:airline#extensions#whitespace#symbol = '!'
"开启tabline
let g:airline#extensions#tabline#enabled = 1
"tabline中buffer显示编号
let g:airline#extensions#tabline#buffer_nr_show = 1 " 配色方案
set background=dark
"colorscheme solarized
"colorscheme molokai
colorscheme gruvbox
"colorscheme phd " 工程文件浏览
" 使用 NERDTree 插件查看工程文件。
nmap <Leader>f :NERDTreeToggle<CR>
" 设置 NERDTree 子窗口宽度
let NERDTreeWinSize=22
" 设置 NERDTree 子窗口位置
let NERDTreeWinPos="left"
" 显示隐藏文件
let NERDTreeShowHidden=1
" NERDTree 子窗口中不显示冗余帮助信息
let NERDTreeMinimalUI=1
" 删除文件时自动删除文件对应 buffer
let NERDTreeAutoDeleteBuffer=1 "ale
"始终开启标志列
"let g:ale_sign_column_always = 1
let g:ale_set_highlights = 0
"显示Linter名称,出错或警告等相关信息
let g:ale_echo_msg_error_str = 'E'
let g:ale_echo_msg_warning_str = 'W'
let g:ale_echo_msg_format = '[%linter%] %s [%severity%]'
"普通模式下,sp前往上一个错误或警告,sn前往下一个错误或警告
nmap sp <Plug>(ale_previous_wrap)
nmap sn <Plug>(ale_next_wrap)
"<Leader>s触发/关闭语法检查
nmap <Leader>s :ALEToggle<CR>
"<Leader>d查看错误或警告的详细信息
nmap <Leader>d :ALEDetail<CR>
"文件内容发生变化时不进行检查
"let g:ale_lint_on_text_changed = 'never'
"打开文件时不进行检查
"let g:ale_lint_on_enter = 0
"对C/C++使用Clang进行语法检查
let g:ale_linters = {'c': 'clang'}
let g:ale_linters = {'c++': 'clang++'}
let g:ale_linters = {'python': ['flake8'], 'reStructuredText': ['rstcheck']}
let g:ale_fixers = {'python': ['remove_trailing_lines', 'trim_whitespace', 'autopep8']}
"禁用了javascript的eslint
let g:ale_linters = {
\ 'javascript': ['eslint'],
\} "LeaderF
"这里定义了 CTRL+P 在当前项目目录打开文件搜索,CTRL+N 打开 MRU搜索,搜索你最近打开的文件,这两项是我用的最频繁的功能。接着 ALT+P 打开函数搜索,ALT+N 打开 Buffer 搜索
let g:Lf_ShortcutF = '<c-p>'
let g:Lf_ShortcutB = '<m-n>'
noremap <c-n> :LeaderfMru<cr>
noremap <m-p> :LeaderfFunction<cr>
noremap <m-n> :LeaderfBuffer<cr>
noremap <m-m> :LeaderfTag<cr>
let g:Lf_StlSeparator = { 'left': '', 'right': '', 'font': '' }
let g:Lf_RootMarkers = ['.project', '.root', '.svn', '.git']
let g:Lf_WorkingDirectoryMode = 'Ac'
let g:Lf_WindowHeight = 0.30
let g:Lf_CacheDirectory = expand('~/.vim/cache')
let g:Lf_ShowRelativePath = 0
let g:Lf_HideHelp = 1
let g:Lf_StlColorscheme = 'powerline'
let g:Lf_NormalMap = {
\ "File": [["<ESC>", ':exec g:Lf_py "fileExplManager.quit()"<CR>'],
\ ["<F6>", ':exec g:Lf_py "fileExplManager.quit()"<CR>'] ],
\ "Buffer": [["<ESC>", ':exec g:Lf_py "bufExplManager.quit()"<CR>'],
\ ["<F6>", ':exec g:Lf_py "bufExplManager.quit()"<CR>'] ],
\ "Mru": [["<ESC>", ':exec g:Lf_py "mruExplManager.quit()"<CR>']],
\ "Tag": [["<ESC>", ':exec g:Lf_py "tagExplManager.quit()"<CR>']],
\ "Function": [["<ESC>", ':exec g:Lf_py "functionExplManager.quit()"<CR>']],
\ "Colorscheme": [["<ESC>", ':exec g:Lf_py "colorschemeExplManager.quit()"<CR>']],
\ } "自动补全
"补全完成时预览窗口自动消失
augroup complete
autocmd!
autocmd CompleteDone * pclose
augroup end """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" common setting "
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
cd D:\Code\VimCode " 设置 gvim 显示字体
set guifont=DejaVu\ Sans\ Mono\ for\ Powerline:h11 set number
"Show related row numbers
set relativenumber " 取消菜单栏和导航栏
set guioptions-=m
set guioptions-=T
" 去除左右两边滚动条
set go-=r
set go-=L
" 设置水平行数和竖直列数
set lines=30
set columns=90 " 总是显示状态栏
set laststatus=2
" 显示光标当前位置
set ruler
" 开启行号显示
set number
" 高亮显示当前行/列
set cursorline
set cursorcolumn
" 高亮显示搜索结果
set hlsearch
"自动换行整词换行
set wrap
set linebreak
"自动设置当前目录为正在编辑的目录
set autochdir
"在光标接近底端或顶端时,自动下滚或上滚
set scrolloff=10 set tenc=utf-8
set encoding=utf-8
set fileencodings=utf-8,chinese,latin-1
if has("win32")
set fileencoding=chinese
else
set fileencoding=utf-8
endif
"解决菜单乱码
source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim
"解决consle输出乱码
language messages zh_CN.utf-8 " 开启实时搜索功能
set incsearch
" 搜索时大小写不敏感
set ignorecase
" 关闭兼容模式
set nocompatible
" 没有八进制
set nrformats=
" vim 自身命令行模式智能补全
set wildmenu
"设置当文件在外部被修改,自动更新该文件
set autoread
"设置不生成备份文件
set nobackup " 缩进
" 自适应不同语言的智能缩进
filetype indent on
" 将制表符扩展为空格
set expandtab
" 设置编辑时制表符占用空格数
set tabstop=4
" 设置格式化时制表符占用空格数
set shiftwidth=4
" 让 vim 把连续数量的空格视为一个制表符
set softtabstop=4
"退格键不能用问题
set backspace=indent,eol,start syntax on
syntax enable
set autoread "关闭警告音
set vb t_vb= """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" keyboard-binding "
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" "Vim 与系统剪切板共享
set clipboard=unnamed
" 设置快捷键将选中文本块复制至系统剪贴板
vnoremap <Leader>y "+y
" 设置快捷键将系统剪贴板内容粘贴至vim
nmap <Leader>p "+p " 定义快捷键关闭当前分割窗口
nmap <Leader>q :q<CR>
" 定义快捷键保存当前窗口内容
nmap <Leader>w :w<CR>
" 定义快捷键保存所有窗口内容并退出 vim
nmap <Leader>WQ :wa<CR>:q<CR>
" 不做任何保存,直接退出 vim
nmap <Leader>Q :qa!<CR> """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Ruing "
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"按F5运行python"
map <F5> :w<cr>:!python %<cr>

Vim配置:在win10下用vim编译运行C/C++(异步插件管理,一键运行)的更多相关文章

  1. java环境的配置——实现win10下双击直接运行jar文件

    java环境的配置--实现win10下双击直接运行jar文件 在渗透测试的过程中很多工具的安装和使用需要java环境,下面我来介绍一下java环境配置的超详细步骤(包含怎样实现win10下双击直接运行 ...

  2. 配置linux平台下基于vim的开发环境

    一.vim的基本配置 1.配置文件的位置在目录 /etc/ 下面,有个名为vimrc的文件,这是系统中公共的vim配置文件,对所有用户都有效.而在每个用户的主目录($HOME)下,都可以自己建立私有的 ...

  3. win10下将spark的程序提交给远程集群中运行

    一,开发环境: 操作系统:win19 64位 IDE:IntelliJ IDEA JDK:1.8 scala:scala-2.10.6 集群:linux上cdh集群,其中spark为1.5.2,had ...

  4. vim配置-程序员【转】

    Ubuntu11.10的vim升级后,版本为vi Improved 7.3.154功能很强大了.不过,程序员要根据自己的习惯配置好vimrc文件,是vim更加得心应手. 注:一般用户在自己的当前目录下 ...

  5. 使用vim配置方案spf13中碰到的一些问题

    目的:达到我自己自定义安装插件的目的 安装YCM(YouCompleteMe)自动补全神器之前的准备 先安装编译环境: 1 2 sudo apt-get install build-essential ...

  6. vim配置python开发环境(转)

    安装 因为许多Unix衍生系统已经预装了Vim,我们首先要确认编辑器是否成功安装: vim --version 如果已经安装了,你应该看到类似下面的文字: VIM - Vi IMproved 7.3 ...

  7. 快速学习C语言三: 开发环境, VIM配置, TCP基础,Linux开发基础,Socket开发基础

    上次学了一些C开发相关的工具,这次再配置一下VIM,让开发过程更爽一些. 另外再学一些linux下网络开发的基础,好多人学C也是为了做网络开发. 开发环境 首先得有个Linux环境,有时候家里机器是W ...

  8. 简洁vim配置方案Janus(1)

    最近不想在编辑器上花太多的精力,所以找到个不错的解决方案. 在不懂vim配置的前提下也能用的很开心. 1,下载安装Janus(https://github.com/carlhuda/janus) 安装 ...

  9. vim学习笔记(一)—— vim安装方法

    一.完全卸载vim的方法 sudo apt-get remove --purge vim (--purge 是完全删除,会连配置文件一起删除) 二.Vim前言——————“世界上只有三种编辑器,EMA ...

随机推荐

  1. vuex(三)actions

    actions:既然mutations只能处理同步函数,我大js全靠‘异步回调’吃饭,怎么能没有异步,于是actions出现了...   actions和mutations的区别     1.Acti ...

  2. Tomcat 配置虚拟路径保存、访问图片

    转载自:https://www.cnblogs.com/magic101/p/7756402.html 配置tomcat的虚拟映射路径 1.修改Tomcat的server.xml文件 <Host ...

  3. Loj 538 递推数列

    Loj 538 递推数列 出题人:这题提高难度吧.于是放在了%你赛的 \(D1T2\) . 递推式为 \(a_i=k*a_{i-1}+a_{i-2}\) , 注意到 \(k\in \mathbb{N_ ...

  4. 零基础学习hadoop到上手工作线路指导初级篇:hive及mapreduce

      此篇是在零基础学习hadoop到上手工作线路指导(初级篇)的基础,一个继续总结.五一假期:在写点内容,也算是总结.上面我们会了基本的编程,我们需要对hadoop有一个更深的理解:hadoop分为h ...

  5. [BZOJ3197][SDOI2013]刺客信条assassin

    bzoj luogu Description 故事发生在1486 年的意大利,Ezio原本只是一个文艺复兴时期的贵族,后来因为家族成员受到圣殿骑士的杀害,决心成为一名刺客.最终,凭借着他的努力和出众的 ...

  6. spring注解实现业务层事务管理,当业务层自调用时,事务失效问题解决

    前些日子一朋友在需要在目标对象中进行自我调用,且需要实施相应的事务定义,且网上的一种通过BeanPostProcessor的解决方案是存在问题的.因此专门写此篇帖子分析why. 1.预备知识 aop概 ...

  7. WPF 自定义消息框(转)

    相信很多人用过MessageBox.show(),是不是觉得这个消息框有点丑呢,反正我是觉得有点丑的,所以我自己重写了一个.先不说,上两幅图对比先: 当然,也不是很好看,不过比原有的好多了. 不多说了 ...

  8. MkDocs 搭建试用

    http://www.mkdocs.org/备注:    在平时的开发中文档管理是一个比较重要的部分,同时集成在 平时开发的持续集成中,可以加速开发   1. 安装 pip install mkdoc ...

  9. jdk、jre、JVM的简单区别与联系

    2015-10-20 23:08:52 (1)jdk Java development toolkit(开发工具包),JDK是整个JAVA的核心,包括了Java运行环境jre(Java Runtime ...

  10. RK3288 查看ddr频率

    转载请注明出处:https://www.cnblogs.com/lialong1st/p/8515135.html RK3288 查看 ddr 当前频率的方式有两种,第一种是通过 adb 查看,第二种 ...