【转】Gvim配置(Windows and Linux)for C++|gvim编译运行c/c++程序
2024-08-25 22:35:14
转载地址:http://blog.csdn.net/onepiecehuiyu/article/details/8934366
http://mawenhao19930620.blog.163.com/blog/static/12857536120112991818242/
Windows下gvim配置文件_vimrc
首先配置g++到环境变量(配置g++,具体是将devc++的g++.exe的路径比如说:c:/deVC++/bin..加入到环境变量path里面) , 然后将下面的代码复制并保存为_vimrc , 替换掉vim安装文件夹中的_vimrc文件(或者是打开Vim的启动设定,然后复制下面的代码并保存即可)
关于如何配置到环境变量。百度即可
"Version: 1.0 by momodi@whuacm
"Modified by ghostboyzone@gmail.com source $VIMRUNTIME/mswin.vim
behave mswin
imap <c-d> <c-o>dd
imap <cr> <cr><left><right>
map o o<left><right>
imap <c-]> {<cr>}<c-o>O<left><right>
noremap <f6> =a{
syn on
colo desert
filetype indent on
se ru nu ar sw=4 ts=4 noswf et sta nowrap ww=<,>,[,] gfn=Consolas:h12
autocmd BufEnter * lcd %:p:h
map <c-t> :tabnew<CR>
map <f9> :call CR()<CR><CR>
func CR()
exec 'update'
if filereadable(expand('%<').'.in')
exec '!start cmd /c _run %< < %<.in & pause'
else
exec '!start cmd /c _run %< & pause'
endif
endfunc
map <f2> :call SetTitle()<CR>Gkkk
func SetTitle()
let l = 0
let l = l + 1 | call setline(l, '/*')
let l = l + 1 | call setline(l, ' * Author: mybestwishes')
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, '#include <iostream>')
let l = l + 1 | call setline(l, '#include <cstdio>')
let l = l + 1 | call setline(l, '#include <cstdlib>')
let l = l + 1 | call setline(l, '#include <cstring>')
let l = l + 1 | call setline(l, '#include <cmath>')
let l = l + 1 | call setline(l, '#include <algorithm>')
let l = l + 1 | call setline(l, '#include <string>')
let l = l + 1 | call setline(l, '#include <vector>')
let l = l + 1 | call setline(l, '#include <stack>')
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 <time.h>')
let l = l + 1 | call setline(l, 'using namespace std;')
let l = l + 1 | call setline(l, 'const int maxint = -1u>>1;')
let l = l + 1 | call setline(l, '')
let l = l + 1 | call setline(l, 'int main() {')
let l = l + 1 | call setline(l, ' return 0;')
let l = l + 1 | call setline(l, '}')
let l = l + 1 | call setline(l, '')
endfunc map<f4> :call AddComment()<cr>
func AddComment()
if matchstr(getline('.'), '[^ ]') == '/'
normal ^xx
else
normal ^i//
endif
endfunc set printoptions=syntax:n,number:y,portrait:y "设置水平滚动条
set guioptions+=b "set encoding=utf-8
"set fileencodings=utf-8,gb2312,gb18030,gbk,ucs-bom,cp936,latin1 " 如果你要打开的文件编码不在此列,那就添加进去
"set termencoding=utf-8
然后将下面代码编译(用你以前的编译器即可,dev-c++,codeblocks都行),找到生成的.exe文件,修改文件名为_run.exe
#include <cstdio> #include <cstdlib> #include <ctime> int main(int argc, char **argv) { char compiler[] = {}; sprintf(compiler, "g++ %s.cpp -o %s.exe", argv[], argv[]); char runcommand[] = {}; sprintf(runcommand, "%s.exe", argv[]); if (system(compiler) == ) { int t = clock(); if (system(runcommand) == ) { printf("\nRun Time: %dms\n", clock() - t); } } return ; }
将_run.exe放到和gvim.exe同一个目录下 。windows下的gvim即配置完毕 。
最新文章
- Apache2.4部署django出现403 Forbidden错误解决办法
- 从基层容器类看万变不离其宗的JAVA继承体系
- (转)深入浅出 妙用Javascript中apply、call、bind
- java中abstract详解
- QRTZ_表注释
- yum标准化安装nginx最新版
- Codeforces Round #207 (Div. 2) A. Group of Students
- Spring MVC 之拦截器(八)
- 在网页中编辑报表的报表设计器Stimulsoft Reports Designer.Web报表控件
- VBA清除Excelpassword保护,2003/2007/2010均适用
- php composer使用
- java学习之tcp与udp的实现
- 前台改变asp button控件的值,后台取值没有改变的问题
- JavaSE学习总结(一)——Java基础
- 数据处理不等式:Data Processing Inequality
- [LeetCode] Contiguous Array 邻近数组
- .NET 常用ORM之NHibernate
- 在Qt项目中添加全局宏变量来达到按方案编译的目的
- Python 面向对象介绍
- C# 只能输入字母或数字
热门文章
- 201521123039 《java程序设计》第四周学习总结
- eclipse里index.jsp头部报错的原因和解决方法
- [01] Pattern类和Matcher类
- 云计算之路-阿里云上:访问阿里云CDN上的图片,自动跳转到百度首页
- Azure ARM (17) 基于角色的访问控制 (Role Based Access Control, RBAC) - 自定义Role
- java围棋游戏源代码
- 出现java.sql.SQLException: No suitable driver的几种解决办法
- Linux 文件查找
- Numpy中Meshgrid函数介绍及2种应用场景
- oracle pl/sql 函数