原文来自于:http://www.cnblogs.com/zhuyp1015/archive/2012/06/16/2552269.html

使用gvim在windows环境下搭建简单的IDE环境可以参见:http://my.oschina.net/u/146511/blog/50717

该文章讲的很详细,而且给出了各种辅助插件的下载链接。

这里主要讲如何在gvim环境下通过快捷键编译程序。

如果需要编译C/C++程序,首先将微软的cl 编译器 加入到环境变量中,也就是说在cmd 模式下能够使用cl。

这里就首先来讲一下如何将 cl 加入到环境变量中。

如果是使用VS2010及更低版本需要这样做:我的电脑->属性->高级系统设置->环境变量

新建:INCLUDE 、LIB、PATH 三个变量,填入下面的值:

假设我的VS2010的安装目录是D:\program files (x86)\Microsoft Visual Studio 10.0\

PATH:D:\program files (x86)\Microsoft Visual Studio 10.0\VC\bin;D:\program files (x86)\Microsoft Visual Studio 10.0\Common7\IDE;

LIB:C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Lib;D:\program files (x86)\Microsoft Visual Studio 10.0\VC\lib;

INCLUDE:C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Include;D:\program files (x86)\Microsoft Visual Studio 10.0\VC\include;

注意:每一项之间使用 ‘;’ 隔开。

我现在装的是VS11 beta版,上面的方式就不能成功了。需要这样做(这里我的VS11 beta是安装在C盘的默认路径):

INCLUDE: C:\Program Files\Microsoft Visual Studio 11.0\VC\include;C:\Program Files\Windows Kits\8.0;C:\Program Files\Windows Kits\8.0\Include\shared;C:\Program Files\Windows Kits\8.0\Include\um;C:\Program Files\Windows Kits\8.0\Include\winrt

LIB: C:\Program Files\Microsoft Visual Studio 11.0\VC\lib;C:\Program Files\Windows Kits\8.0;C:\Program Files\Windows Kits\8.0\Lib\win8\um\x86

PATH: C:\Program Files\Microsoft Visual Studio 11.0\Common7\IDE;C:\Program Files\Microsoft Visual Studio 11.0\VC\bin;D:\Program Files\Python2.7

这样的方式增加了环境变量之后再cmd中就可以使用cl 编译器了(这里也一并增加了Python的环境变量)。

现在cl 已经可以用,现在我们需要修改gim安装文件夹中的 vimrc 这个文件(在vimrc 文件中加入):

" 编译源文件
func! CompileCode()
exec "w"
if &filetype == "c"
   exec "!cl %<.c "
elseif &filetype == "cpp"
   exec "!cl %<.cpp "

elseif &filetype == "python"
  exec "!python %<.py"

endif
endfunc

" 运行可执行文件
func! RunCode()
exec "w"
if &filetype == "c" || &filetype == "cpp" || &filetype == "haskell"
exec "! %<.exe"
elseif &filetype == "python"
exec "!python %<.py"
endif
endfunc

" Ctrl + C 一键保存、编译
map <c-c> :call CompileCode()<CR>
imap <c-c> <ESC>:call CompileCode()<CR>
vmap <c-c> <ESC>:call CompileCode()<CR>

Ctrl + R 一键保存、运行
map <c-r> :call RunCode()<CR>
imap <c-r> <ESC>:call RunCode()<CR>
vmap <c-r> <ESC>:call RunCode()<CR>

注:加了‘ " ’的行是注释了的行

这样就可以编译和运行c/c++/Python 文件了。

增加Python的环境变量如上面提到的方式就可以了,但是如果想在命令行直接运行.py文件的话需要再修改另一个环境变量(在系统变量中)PATHEXT: 加入.py 和 .pym

如果要支持中文,需要使用utf-8编码格式。可以在.py文件的开头加入: # -*- coding: utf-8 -*-

加入 

# -*- coding: utf-8 -*-

的这个操作也可以再vimrc中增加如下句子来实现:

map <c-p> ggi# -*- coding: utf-8 -*-<CR><ESC>:w<CR>
imap <c-p> <ESC>ggi# -*- coding: utf-8 -*-<CR><ESC>:w<CR>
vmap <c-p> <ESC>ggi# -*- coding: utf-8 -*-<CR><ESC>:w<CR>

然后在使用ctrl + r 运行前,先按 ctrl + p 就可以自动加上这句话了。

转:windows下使用gvim搭建简单的IDE编译环境(支持C/C++/Python等)的更多相关文章

  1. 使用code::blocks搭建objective-c的IDE开发环境 支持 @interface

    网上有许多的关于 <使用code::blocks搭建objective-c的IDE开发环境>的文章. 大多是写了一个Helloworld 就结束了,今天试了试 添加了一个 @interfa ...

  2. Windows下Git服务器搭建[转]

    Windows下Git服务器搭建   作为对前两天Git服务器搭建的一个整理,我想分别从服务端和客户端两个角度来记录下整个搭建过程,为了达到目标,我们需要哪些操作. (一)服务端软件和账号的安装配置 ...

  3. Windows下SVN服务器搭建方法整理(apache)

    http://skydream.iteye.com/blog/437959 http://www.cnblogs.com/liuke209/archive/2009/09/23/1572858.htm ...

  4. 转载:Windows下三分钟搭建Shadowoscks服务器端

    Windows下三分钟搭建Shadowoscks服务器端 之前在V2EX上有人问为啥没人做个在Windows上一键运行Shadowsocks服务器端的程序,我只想说……这是因为没人关注我的libQtS ...

  5. windows下sqli-labs的搭建及学习(POST篇)

    windows下sqli-labs的搭建及学习(GET篇): http://blog.csdn.net/sherlock17/article/details/64454449 Less-11:基于错误 ...

  6. memcache的windows下的安装和简单使用

    原文:memcache的windows下的安装和简单使用 memcache是为了解决网站访问量大,数据库压力倍增的解决方案之一,由于其简单实用,很多站点现在都在使用memcache,但是memcach ...

  7. windows下如何快速搭建web.py开发框架

    在windows下如何快速搭建web.py开发框架 用Python进行web开发的话有很多框架供选择,比如最出名的Django,tornado等,除了这些框架之外,有一个轻量级的框架使用起来也是非常方 ...

  8. 在windows下如何快速搭建web.py开发框架

    在windows下如何快速搭建web.py开发框架 用Python进行web开发的话有很多框架供选择,比如最出名的Django,tornado等,除了这些框架之外,有一个轻量级的框架使用起来也是非常方 ...

  9. windows下的gvim和emmet 下载和安装 + "omnifunc is not set" solution?

    注意几个地方: 引导键是ctrl-y, 其他就是实际的操作键了, 如: n下一个插入点, N是上一个插入点(不是p), ctrl-y + i是自动为图片添加宽度和高度尺寸, 要点是要把光标移动到 im ...

随机推荐

  1. [ACM] HDU 5025 Saving Tang Monk (状态压缩,BFS)

    Saving Tang Monk Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) ...

  2. Android 手动显示和隐藏软键盘

    1.方法一(如果输入法在窗口上已经显示,则隐藏,反之则显示) InputMethodManager imm = (InputMethodManager) getSystemService(Contex ...

  3. percona-MYSQLGUI监控

    1.https://www.percona.com/blog/2016/05/26/monitoring-with-percona-app-for-grafana/ http://pmmdemo.pe ...

  4. ios从相册:摄像头中获取视频

    ios从相册/摄像头中获取视频 如何从相册中获取视频 使用的是一个和获取照片相同的类UIImagePickerController //相册中获取视频 - (IBAction)clickViedoOF ...

  5. 设置Eclipse中文API提示信息

    准备工作:下载中文API到本机:http://download.java.net/jdk/jdk-api-localizations/jdk-api-zh-cn/publish/1.6.0/html_ ...

  6. iOS 数据持久化(3):Core Data

    @import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css); @import url(/ ...

  7. vim 缩写abbreviation

    创建 :ab abbreviation pharse 取消 :unab abbreviation 缩写使用 insert模式下输入缩写,Enter键获得pharse.

  8. Ubuntu16.04LTS安装

    1. 制作u盘启动盘 下载ubuntu-16.04-desktop-amd64.iso文件后,使用u盘启动盘制作工具:Win32DiskImager(14.04LTS后都需要用到这工具制作:https ...

  9. [Redis] windows下安装 Redis

    一:Redis是什么? Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API. 通过https://github.c ...

  10. 使用EasyUI设计.net项目的菜单数实例

    最近领导说我们之前的项目采用的菜单树模型过时了,现在采用EasyUI来设计了,于是学习了第三方资源库easyUI,发觉果然是好东西,这里给大家分享下. 首先到官网下载源文件,这个是开源的,都可以下再, ...