vim编译c++文件设置

原创 2015年03月29日 08:56:35

为了从codd::blocks平台转移到vim,最近几天花了好久研究vim,虽然也没有学会什么奇技淫巧,但是终于可以编译c++文件了。
vim和ide比起来,就是秒开,实在受不了vs的庞大,cb的丑陋。

  1. 安装并配置gcc环境
    gcc可以用CodeBlocks的目录下的MinGW,也可以从网上下一个重新安装(gcc下载地址
    接下来是依次打开计算机->系统属性->高级系统设置->高级->环境变量->用户变量->变量PATH(如果没有自己新建一个)->编辑写下MinGW的bin文件夹地址,我的是这样C:\MinGW\bin;最后用分号隔开
    之后按win(就是Ctrl和alt之间的按键)+r ,输入cmd,再输入g++ -v命令。
    如果出现下面的图就可以了
    成功安装

  2. 配置vim
    打开vim的配置文件_vimrc,一般在vim目录下。
    输入将下面代码复制进去,我的设置是按F6编译。
    这个文件中用 ” 可以注释

" 编译器选择
map <F6> :call CR()<CR>
func! CR()
exec "w"
exec "!g++ -O2 -g  % -o %<"
exec "! %<"
"exec "!g++ % -o %<"
"exec "! ./%<
endfun

3.写程序
一般可以在桌面上新建一个txt文件,再将它改名程a.cpp之类的直接拖进vim里面来写,还可以配置_vimrc文件来一键生成头文件之类的,具体的也是在那个文件中加入下面的代码,按F2可以生成。
模版来自kuangbin大神

"c++的头文件
map <F2> :call SetTitle()<CR>
func SetTitle()
let l = 0
let l = l + 1 | call setline(l,'/* ***********************************************')
let l = l + 1 | call setline(l,'Author        :xryz')
let l = l + 1 | call setline(l,'Email         :523689985@qq.com')
let l = l + 1 | call setline(l,'Created Time  :'.strftime('%c'))
let l = l + 1 | call setline(l,'File Name     :'.expand('%'))
let l = l + 1 | call setline(l,'************************************************ */')
let l = l + 1 | call setline(l,'')
let l = l + 1 | call setline(l,'#include <stdio.h>')
let l = l + 1 | call setline(l,'#include <string.h>')
let l = l + 1 | call setline(l,'#include <iostream>')
let l = l + 1 | call setline(l,'#include <algorithm>')
let l = l + 1 | call setline(l,'#include <vector>')
let l = l + 1 | call setline(l,'#include <queue>')
let l = l + 1 | call setline(l,'#include <set>')
let l = l + 1 | call setline(l,'#include <map>')
let l = l + 1 | call setline(l,'#include <string>')
let l = l + 1 | call setline(l,'#include <math.h>')
let l = l + 1 | call setline(l,'#include <stdlib.h>')
let l = l + 1 | call setline(l,'#include <time.h>')
let l = l + 1 | call setline(l,'using namespace std;')
let l = l + 1 | call setline(l,'')
let l = l + 1 | call setline(l,'int main()')
let l = l + 1 | call setline(l,'{')
let l = l + 1 | call setline(l,'    //freopen("in.txt","r",stdin);')
let l = l + 1 | call setline(l,'    //freopen("out.txt","w",stdout);')
let l = l + 1 | call setline(l,'    ')
let l = l + 1 | call setline(l,'    return 0;')
let l = l + 1 | call setline(l,'}')
endfunc

再按f6就可以编译了,之后自己看着办吧

最后我的vim配置文件

"####默认设置
source $VIMRUNTIME/vimrc_example.vim
source $VIMRUNTIME/mswin.vim
behave mswin

set diffexpr=MyDiff()
function MyDiff()
  let opt = '-a --binary '
  if &diffopt =~ 'icase' | let opt = opt . '-i ' | endif
  if &diffopt =~ 'iwhite' | let opt = opt . '-b ' | endif
  let arg1 = v:fname_in
  if arg1 =~ ' ' | let arg1 = '"' . arg1 . '"' | endif
  let arg2 = v:fname_new
  if arg2 =~ ' ' | let arg2 = '"' . arg2 . '"' | endif
  let arg3 = v:fname_out
  if arg3 =~ ' ' | let arg3 = '"' . arg3 . '"' | endif
  if $VIMRUNTIME =~ ' '
    if &sh =~ '\<cmd'
      if empty(&shellxquote)
        let l:shxq_sav = ''
        set shellxquote&
      endif
      let cmd = '"' . $VIMRUNTIME . '\diff"'
    else
      let cmd = substitute($VIMRUNTIME, ' ', '" ', '') . '\diff"'
    endif
  else
    let cmd = $VIMRUNTIME . '\diff'
  endif
  silent execute '!' . cmd . ' ' . opt . arg1 . ' ' . arg2 . ' > ' . arg3
  if exists('l:shxq_sav')
    let &shellxquote=l:shxq_sav
  endif
endfunction

"####基本设置

" 显示行号
set nu

" Tab键的宽度
set tabstop=4

" 自动缩进
set autoindent

" 语法高亮度显示
syntax on 

" 配色主题
set background=dark
colorscheme solarized

" 字体和大小
set guifont=Hack:h13

" 显示输入的命令
set showcmd

"设置匹配模式,类似当输入一个左括号时会匹配相应的那个右括号
set showmatch

" 可以在buffer的任何地方使用鼠标
set mouse=a

" 启动的时候不显示那个援助乌干达儿童的提示
set shortmess=atI   

" 与windows共享剪贴板  
set clipboard+=unnamed

" 高亮光标所在行
set cursorline

" 从不备份,禁止生成临时文件
set nobackup
set noswapfile

" 自动补全相关
imap <c-]> {<cr>}<c-o>O<left><right>
inoremap ( ()<LEFT>
inoremap [ []<LEFT>
inoremap { {}<LEFT>
inoremap " ""<LEFT>
inoremap ' ''<LEFT>


" 设置默认编码 
set encoding=utf-8 
set fileencodings=utf-8
set termencoding=utf-8

" 解决菜单乱码(不知道有什么用)
source $VIMRUNTIME/delmenu.vim 
source $VIMRUNTIME/menu.vim 

" 解决console输出乱码 (删除之后菜单栏会乱码)
language messages zh_CN.utf-8

" 隐藏菜单和具栏
set guioptions-=m
set guioptions-=T
map <silent> <F5> :if &guioptions =~# 'T' <Bar>
        \set guioptions-=T <Bar>
        \set guioptions-=m <bar>
    \else <Bar>
        \set guioptions+=T <Bar>
        \set guioptions+=m <Bar>
    \endif<CR>

"####C/C++ 相关设置
" C/C++ 的编译设置
map <F9> :call CR()<CR>
func! CR()
exec "w"
exec "!g++ -O2 -g  % -o %<"
exec "! %<"
"exec "!g++ % -o %<"
"exec "! ./%<
endfunc

" C/C++ 的调试
map <F8> :call Rungdb()<CR>
func! Rungdb()
    exec "w"
    exec "!g++ % -g -o %<"
    exec "!gdb ./%<"
endfunc

" C/C++ 的头文件
map <F2> :call SetTitle()<CR>
func SetTitle()
let l = 0
let l = l + 1 | call setline(l,'/* ***********************************************')
let l = l + 1 | call setline(l,'Author        :Maktub')
let l = l + 1 | call setline(l,'Email         :xiang578@foxmail.com')
let l = l + 1 | call setline(l,'Blog          :htttp://www.xiang578.com')
let l = l + 1 | call setline(l,'Created Time  :'.strftime('%c'))
let l = l + 1 | call setline(l,'File Name     :'.expand('%'))
let l = l + 1 | call setline(l,'************************************************ */')
let l = l + 1 | call setline(l,'')
let l = l + 1 | call setline(l,'//#include <stdio.h>')
let l = l + 1 | call setline(l,'//#include <string.h>')
let l = l + 1 | call setline(l,'//#include <iostream>')
let l = l + 1 | call setline(l,'//#include <algorithm>')
let l = l + 1 | call setline(l,'//#include <vector>')
let l = l + 1 | call setline(l,'//#include <queue>')
let l = l + 1 | call setline(l,'//#include <set>')
let l = l + 1 | call setline(l,'//#include <map>')
let l = l + 1 | call setline(l,'//#include <string>')
let l = l + 1 | call setline(l,'//#include <math.h>')
let l = l + 1 | call setline(l,'//#include <stdlib.h>')
let l = l + 1 | call setline(l,'//#include <time.h>')
let l = l + 1 | call setline(l,'#include <bits/stdc++.h>')
let l = l + 1 | call setline(l,'using namespace std;')
let l = l + 1 | call setline(l,'')
let l = l + 1 | call setline(l,'int main()')
let l = l + 1 | call setline(l,'{')
let l = l + 1 | call setline(l,'    //freopen("in.txt","r",stdin);')
let l = l + 1 | call setline(l,'    //freopen("out.txt","w",stdout);')
let l = l + 1 | call setline(l,'    ')
let l = l + 1 | call setline(l,'    return 0;')
let l = l + 1 | call setline(l,'}')
endfunc


"####Vundle 插件管理

filetype off
"Vundle路径
set rtp+=$VIM/vimfiles/bundle/Vundle.vim
"插件的安装路径
call vundle#begin('$VIM/vimfiles/bundle/')

" 插件管理
Plugin 'gmarik/Vundle.vim'
Plugin 'L9'

" 状态栏
Plugin 'bling/vim-airline'
" 
Plugin 'plasticboy/vim-markdown'

" 配色
Plugin 'altercation/vim-colors-solarized'

" 自动对齐
Plugin 'godlygeek/tabular'

" Fugitive: Git 集成,强烈推荐!
" Plugin 'tpope/vim-fugitive'

call vundle#end()
filetype plugin indent on


" airline设置
set laststatus=2
"使用powerline打过补丁的字体
let g:airline_powerline_fonts = 1
set laststatus=2
set t_Co=256   
let g:Powerline_symbols = 'fancy'
"set guifont=Consolas\ for\ Powerline\ FixedD:h15
" 开启tabline
let g:airline#extensions#tabline#enabled = 1
" tabline中当前buffer两端的分隔字符
"let g:airline#extensions#tabline#left_sep = ' '
" tabline中未激活buffer两端的分隔字符
"let g:airline#extensions#tabline#left_alt_sep = '<'
" tabline中buffer显示编号
let g:airline#extensions#tabline#buffer_nr_show = 0
" 映射切换buffer的键位
nnoremap [b :bp<CR>
nnoremap ]b :bn<CR>

"Vim-Markdown
"1.disable folding
let g:vim_markdown_folding_disabled=1
"2.latex
let g:vim_markdown_math=1
"Disable Default Key Mappings
let g:vim_markdown_no_default_key_mappings=1
" 去掉讨厌的有关vi一致性模式,避免以前版本的一些bug和局限
set nocompatible
source $VIMRUNTIME/vimrc_example.vim
source $VIMRUNTIME/mswin.vim
behave mswin

set diffexpr=MyDiff()
function MyDiff()
  let opt = '-a --binary '
  if &diffopt =~ 
  'icase' | let opt = opt . '-i ' | endif
  if &diffopt =~ 'iwhite' | let opt = opt . '-b ' | endif
  let arg1 = v:fname_in
  if arg1 =~ ' ' | let arg1 = '"' . arg1 . '"' | endif
  let arg2 = v:fname_new
  if arg2 =~ ' ' | let arg2 = '"' . arg2 . '"' | endif
  let arg3 = v:fname_out
  if arg3 =~ ' ' | let arg3 = '"' . arg3 . '"' | endif
  let eq = ''
  if $VIMRUNTIME =~ ' '
    if &sh =~ '\<cmd'
      let cmd = '""' . $VIMRUNTIME . '\diff"'
      let eq = '"'
    else
      let cmd = substitute($VIMRUNTIME, ' ', '" ', '') . '\diff"'
    endif
  else
    let cmd = $VIMRUNTIME . '\diff'
  endif
  silent execute '!' . cmd . ' ' . opt . arg1 . ' ' . arg2 . ' > ' . arg3 . eq
endfunction

" 显示行号
set nu

" 历史记录数
set history=1000000

" Tab键的宽度
set tabstop=4

" 统一缩进为4
set shiftwidth=4

" 在行和段开始处使用制表符
set smarttab

" 自动缩进
set autoindent
set cindent

" 配色主题
colo evening

set guifont=monaco:h10

" 输入的命令显示出来,看的清楚些 
set showcmd

" 从不备份,禁止生成临时文件
set nobackup
set noswapfile

" 可以在buffer的任何地方使用鼠标(类似office中在工作区双击鼠标定位)
set mouse=a

" 编译器选择
map <F6> :call CR()<CR>
func! CR()
exec "w"
exec "!g++ -O2 -g  % -o %<"
exec "! %<"
"exec "!g++ % -o %<"
"exec "! ./%<
endfunc

imap <c-]> {<cr>}<c-o>O<left><right>

map <C-A> ggVG"+y


"inoremap ( ()<LEFT>
"inoremap [ []<LEFT>
"inoremap { {}<LEFT>
"inoremap " ""<LEFT>
"inoremap ' ''<LEFT>

"c++的头文件
map <F2> :call SetTitle()<CR>
func SetTitle()
let l = 0
let l = l + 1 | call setline(l,'/* ***********************************************')
let l = l + 1 | call setline(l,'Author        :xryz')
let l = l + 1 | call setline(l,'Email         :523689985@qq.com')
let l = l + 1 | call setline(l,'Created Time  :'.strftime('%c'))
let l = l + 1 | call setline(l,'File Name     :'.expand('%'))
let l = l + 1 | call setline(l,'************************************************ */')
let l = l + 1 | call setline(l,'')

let l = l + 1 | call setline(l,'#include <stdio.h>')
let l = l + 1 | call setline(l,'#include <string.h>')
let l = l + 1 | call setline(l,'#include <iostream>')
let l = l + 1 | call setline(l,'#include <algorithm>')
let l = l + 1 | call setline(l,'#include <vector>')
let l = l + 1 | call setline(l,'#include <queue>')
let l = l + 1 | call setline(l,'#include <set>')
let l = l + 1 | call setline(l,'#include <map>')
let l = l + 1 | call setline(l,'#include <string>')
let l = l + 1 | call setline(l,'#include <math.h>')
let l = l + 1 | call setline(l,'#include <stdlib.h>')
let l = l + 1 | call setline(l,'#include <time.h>')
let l = l + 1 | call setline(l,'using namespace std;')
let l = l + 1 | call setline(l,'')
let l = l + 1 | call setline(l,'int main()')
let l = l + 1 | call setline(l,'{')
let l = l + 1 | call setline(l,'    //freopen("in.txt","r",stdin);')
let l = l + 1 | call setline(l,'    //freopen("out.txt","w",stdout);')
let l = l + 1 | call setline(l,'    ')
let l = l + 1 | call setline(l,'    return 0;')
let l = l + 1 | call setline(l,'}')
endfunc

" txt高亮设置
"syntax on
"filetype plugin on 
"au BufEnter *.txt setlocal ft=txt

set shortmess=atI   " 启动的时候不显示那个援助乌干达儿童的提示  
"winpos 5 5          " 设定窗口位置  
"set lines=40 columns=155    " 设定窗口大小  
"make 运行
:set makeprg=g++\ -Wall\ \ %

新版(未排版)

" 去掉讨厌的有关vi一致性模式,避免以前版本的一些bug和局限
set nocompatible
source $VIMRUNTIME/vimrc_example.vim
source $VIMRUNTIME/mswin.vim
behave mswin

set diffexpr=MyDiff()
function MyDiff()
  let opt = '-a --binary '
  if &diffopt =~ 'icase' | let opt = opt . '-i ' | endif
  if &diffopt =~ 'iwhite' | let opt = opt . '-b ' | endif
  let arg1 = v:fname_in
  if arg1 =~ ' ' | let arg1 = '"' . arg1 . '"' | endif
  let arg2 = v:fname_new
  if arg2 =~ ' ' | let arg2 = '"' . arg2 . '"' | endif
  let arg3 = v:fname_out
  if arg3 =~ ' ' | let arg3 = '"' . arg3 . '"' | endif
  let eq = ''
  if $VIMRUNTIME =~ ' '
    if &sh =~ '\<cmd'
      let cmd = '""' . $VIMRUNTIME . '\diff"'
      let eq = '"'
    else
      let cmd = substitute($VIMRUNTIME, ' ', '" ', '') . '\diff"'
    endif
  else
    let cmd = $VIMRUNTIME . '\diff'
  endif
  silent execute '!' . cmd . ' ' . opt . arg1 . ' ' . arg2 . ' > ' . arg3 . eq
endfunction

" 显示行号
set nu

" 历史记录数
set history=1000000

" Tab键的宽度
set tabstop=4

" 统一缩进为4
set shiftwidth=4

" 在行和段开始处使用制表符
set smarttab

" 自动缩进
set autoindent
set cindent

" 配色主题
" colo lucius
set background=light
colorscheme solarized

" 默认字体和大小
set guifont=Hack:h13

" 显示输入的命令
set showcmd

" 从不备份,禁止生成临时文件
set nobackup
set noswapfile
" 可以在buffer的任何地方使用鼠标(类似office中在工作区双击鼠标定位)
set mouse=a

" C++,C 的编译设置
map <F9> :call CR()<CR>
func! CR()
exec "w"
exec "!g++ -O2 -g  % -o %<"
exec "! %<"
"exec "!g++ % -o %<"
"exec "! ./%<
endfunc

"C,C++的调试
map <F8> :call Rungdb()<CR>
func! Rungdb()
    exec "w"
    exec "!g++ % -g -o %<"
    exec "!gdb ./%<"
endfunc

imap <c-]> {<cr>}<c-o>O<left><right>

inoremap ( ()<LEFT>
inoremap [ []<LEFT>
inoremap { {}<LEFT>
inoremap " ""<LEFT>
inoremap ' ''<LEFT>

"c++的头文件
map <F2> :call SetTitle()<CR>
func SetTitle()
let l = 0
let l = l + 1 | call setline(l,'/* ***********************************************')
let l = l + 1 | call setline(l,'Author        :xryz')
let l = l + 1 | call setline(l,'Email         :xiang578@foxmail.com')
let l = l + 1 | call setline(l,'Blog          :htttp://www.xiang578.top')
let l = l + 1 | call setline(l,'Created Time  :'.strftime('%c'))
let l = l + 1 | call setline(l,'File Name     :'.expand('%'))
let l = l + 1 | call setline(l,'************************************************ */')
let l = l + 1 | call setline(l,'')
let l = l + 1 | call setline(l,'//#include <stdio.h>')
let l = l + 1 | call setline(l,'//#include <string.h>')
let l = l + 1 | call setline(l,'//#include <iostream>')
let l = l + 1 | call setline(l,'//#include <algorithm>')
let l = l + 1 | call setline(l,'//#include <vector>')
let l = l + 1 | call setline(l,'//#include <queue>')
let l = l + 1 | call setline(l,'//#include <set>')
let l = l + 1 | call setline(l,'//#include <map>')
let l = l + 1 | call setline(l,'//#include <string>')
let l = l + 1 | call setline(l,'//#include <math.h>')
let l = l + 1 | call setline(l,'//#include <stdlib.h>')
let l = l + 1 | call setline(l,'//#include <time.h>')
let l = l + 1 | call setline(l,'#include <bits/stdc++.h>')
let l = l + 1 | call setline(l,'using namespace std;')
let l = l + 1 | call setline(l,'')
let l = l + 1 | call setline(l,'int main()')
let l = l + 1 | call setline(l,'{')
let l = l + 1 | call setline(l,'    //freopen("in.txt","r",stdin);')
let l = l + 1 | call setline(l,'    //freopen("out.txt","w",stdout);')
let l = l + 1 | call setline(l,'    ')
let l = l + 1 | call setline(l,'    return 0;')
let l = l + 1 | call setline(l,'}')
endfunc

" 启动的时候不显示那个援助乌干达儿童的提示
set shortmess=atI   

"make 运行
:set makeprg=g++\ -Wall\ \ %

" 与windows共享剪贴板  
set clipboard+=unnamed

" 命令行(在状态行下)的高度,默认为1,这里是2  
set cmdheight=2 

" 为C程序提供自动缩进  
set smartindent  

" 使用C样式的缩进  
"set cinden

" 语法高亮度显示
syntax on 

"设置匹配模式,类似当输入一个左括号时会匹配相应的那个右括号
set showmatch

"隐藏菜单和具栏
set guioptions-=m
set guioptions-=T
map <silent> <F5> :if &guioptions =~# 'T' <Bar>
        \set guioptions-=T <Bar>
        \set guioptions-=m <bar>
    \else <Bar>
        \set guioptions+=T <Bar>
        \set guioptions+=m <Bar>
    \endif<CR>

filetype off

"Vundle的路径
set rtp+=$VIM/vimfiles/bundle/Vundle.vim
"插件的安装路径
call vundle#begin('$VIM/vimfiles/bundle/')

Plugin 'gmarik/Vundle.vim'
Plugin 'L9'
Plugin 'bling/vim-airline'
Plugin 'godlygeek/tabular'
Plugin 'plasticboy/vim-markdown'
Plugin 'altercation/vim-colors-solarized'
"Plugin 'https://github.com/powerline/fonts.git'
call vundle#end()
filetype plugin indent on

" airline设置
set laststatus=2
"使用powerline打过补丁的字体
let g:airline_powerline_fonts = 1
set laststatus=2
set t_Co=256   
let g:Powerline_symbols = 'fancy'
"set guifont=Consolas\ for\ Powerline\ FixedD:h15
" 开启tabline
let g:airline#extensions#tabline#enabled = 1
" tabline中当前buffer两端的分隔字符
"let g:airline#extensions#tabline#left_sep = ' '
" tabline中未激活buffer两端的分隔字符
"let g:airline#extensions#tabline#left_alt_sep = '<'
" tabline中buffer显示编号
let g:airline#extensions#tabline#buffer_nr_show = 0
" 映射切换buffer的键位
nnoremap [b :bp<CR>
nnoremap ]b :bn<CR>

"Vim-Markdown
"1.disable folding
let g:vim_markdown_folding_disabled=1
"2.latex
let g:vim_markdown_math=1
"Disable Default Key Mappings
let g:vim_markdown_no_default_key_mappings=1

"设置默认编码 
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 
"解决console输出乱码 
language messages zh_CN.utf-8
版权声明:本文为博主原创文章,未经博主允许不得转载。http://www.xiang578.com

vim 一键编译JAVA,c++

参考:http://www.cnblogs.com/ma6174/archive/2011/12/10/2283393.html 以及vim帮助文档 用这段代码可以实现f5编译"C,C++ 按F5...
  • u010734277
  • u010734277
  • 2016年05月11日 18:26
  • 1004

Vim 一键编译、连接、运行 C/C++ 单文件(Windows 与 Linux通用)

本代码是对vim下一键保存/编译/链接/运行的配置,放在vimrc文件内即可 "-----------------------------------------------------------...
  • caishenfans
  • caishenfans
  • 2015年03月02日 15:27
  • 3884

Linux下使用Vim进行C/C++ 编程基础知识详解

(预备知识) 学习Vim:  http://www.cnblogs.com/starspace/archive/2009/05/15/1458044.html 配置Vim:  http:/...
  • zhu2695
  • zhu2695
  • 2016年05月22日 00:22
  • 2558

linux下用vim编写C/C++工程(多个源文件)的基本方法

在我们平时写程序的过程中,用单个源文件把程序写出来的时候较少,一般都是分成多个头文件和源文件来完成的。这个时候如果我们仍想就通过vim工具来完成 我们的编译工作,那就要用到make。这里用个最简单的例...
  • u012556077
  • u012556077
  • 2015年09月16日 16:04
  • 1036

Ubuntu&红帽的vim通用配置(文件头+一键编译执行C/C++/Java单文件)

vim是一款功能很强大的编辑器,可能网上的大神们配置的比较复杂。功能也很多。我这里的配置能够满足基本需求。快速且通用,只要大家将自己的vimrc文件打开按照我的截图添加几行代码即可解决. 大家直...
  • zxnsirius
  • zxnsirius
  • 2016年05月06日 13:02
  • 1648

在VIM中添加一键编译和一键运行

事先声明,我使用的VIM完全是基于终端的,而不是gvim或vim-x11。因为后两者不具有平台移植性,花哨的目录和鼠标点击并非必须。 在vim中编程,退出来再敲命令编译是一件痛苦的事情。如果...
  • yufengicd
  • yufengicd
  • 2013年08月11日 00:19
  • 1698

在VIM下写C++能有多爽?

我是坚定的Vim党,因为和命令行的集成如此之好,Vim可以解决任何问题。 然而在这个世界上,即便是最好用的工具也是需要配置的。本文就来打造一个适合写C++的Vim编辑器! 基础设置 稍微熟悉Vim...
  • yangjvn
  • yangjvn
  • 2015年08月20日 13:53
  • 14307

在Windows下搭建GCC+VIM编译环境

在Windows下搭建GCC+VIM编译环境在windows下进行小型代码测试时,若启动大型的IDE,启动慢、效率低。可以采用GCC作为编译器,Vim作为代码编辑器,再对vim进行配置,集成gcc,可...
  • xiake001
  • xiake001
  • 2017年07月23日 14:00
  • 566

在Linux下C/C++编程vim初步配置

.vimrc文件
  • shanzhizi
  • shanzhizi
  • 2014年07月11日 08:15
  • 6207

windows7搭建基于VIM的开发环境(1)-搭建msys2下64位编译环境

windows7搭建基于VIM的开发环境(1)本系列指导 主要是从无到有完整搭建windows下基于VIM的开发环境,主要分为以下几部分: 搭建msys2下64位编译环境 编译64位且支持python...
  • qz757
  • qz757
  • 2016年11月27日 08:11
  • 489
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:vim编译c++文件设置
举报原因:
原因补充:

(最多只允许输入30个字)