sublime C++ build system配置体验
近期准备实习,于是终于步入了sublime的阵营,sublime确实性感。
在配置win7下C++编译运行集成环境的时候遇到点问题,于是接触了一下JSON格式,最后终于自己搞定了。。
参考文档:http://sublime-text.readthedocs.org/en/latest/reference/build_systems.html
其实最终是在C++.sublime-build里写以下东西就好了(tools->build system->new build system)
{
"path": "D:\\CodeBlocks\\MinGW\\bin",
"cmd": "g++ $file -o $file_base_name.exe",
"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
"working_dir": "$file_path",
"selector": "source.c, source.c++",
"shell": true,
"variants":
[
{
"name": "RUN",
"cmd": "g++ $file -o $file_base_name.exe && start $file_base_name.exe"
}
]
}
解释:
文件名:CPP.sublime-build意味着在sublime中按ctrl+shift+b的时候弹出来的编译选项的名字是CPP,理论上可以随便改啦
path:由于cmd执行程序(如g++)的时候默认会去环境变量中找,这个属性是直接来后面的路径去找,所以直接放进去g++.exe的所在目录就好
cmd:选择CPP后执行的命令(由系统执行,可以看成是在cmd中执行的效果),这里$后面被当做变量名解析
file_regex:正则式筛选cmd的debug信息回显
working_dir:这个挺舒服的,工作路径,如果填了F:\test就相当于cd F:\test这个意思,所以我们后面的文件名都相对路径就好了
selector:主要看后缀名,符合这些后缀名的文件将激活这个编译文档,这里把.c .cpp一块丢给g++就好
shell:是否弹出cmd窗口来运行程序,true的好处是可以输入参数
variants:这里面是CPP编译文档的副本,相当于备选编译选项,可以由多个备选,每个都用{}并列起来
name:编译选项的小名,如果写了RUN,按ctrl+shift+b的时候就会多出来一个CPP:RUN这样的编译选项;name只能在variants中写
cmd:此处的cmd可以覆盖外面的cmd;这里为了方便我把编译和运行写在同一句话了,如此按一下就和codeblocks里的F5(F9?不记得了...)一样爽,中间用&&连接
另外:
关于让程序的暂停问题,没找到像codeblocks那样自动停的好的方法,暂时只能system("PAUSE")或者getchar之类的了,(小程序嘛,不要在意system("PAUSE")耗多少资源这种事啦)
这样弄完了回到任意.cpp文件按ctrl+B,选RUN就可以编译+运行啦,如果有错Command Palette(Sublime下方的那个控制台一样的东西)里会显示一堆东西,按F4和shift+F4可以查看error,惊奇的发现可以直接跳到错误行,666
这两天学python,php,xss也各种小问题小心得,但是毕设时间紧迫。。(那你还刷剧打游戏!)没有记录下来~等成长一下再说吧~
goodbye
sublime C++ build system配置体验的更多相关文章
- sublime text build system automatic ctrl/cmd+B自动选择 python2 或 python3
背景 我同时安装了 python2 和 python3 时,python 指向 python2,python3 才是 python3 默认情况下,在 Sublime 内 Ctrl/Cmd + B 运行 ...
- Sublime Text Build System——编译运行Java
今天Google如何在ST中编译运行Java的时候,无意中发现了一个更好的方法. 其实,在ST中是可以编译Java的,但是运行不了,因为没有配置运行命令.那么一般的配置方法都是如下的: http:// ...
- 在Sublime Text 3中配置Python3的开发环境/Build System
本文来源:https://www.cnblogs.com/zhangqinwei/p/6886600.html Sublime Text作为一款支持多种编程语言的文本编辑神器,深受广大开发者的喜爱.通 ...
- sublime text 配置 builder [build system]
有时候需要用运行一段 PHP 代码,比如测试某个函数返回值等等,如果启动 Http Server,再打开浏览器,那黄花菜都凉了.我们可以在 Sublime Text 3 中创建 PHP 的 build ...
- lua语言入门之Sublime Text设置lua的Build System
转自: http://blog.csdn.net/wangbin_jxust/article/details/8911956 最近开始学习LUA语言,使用Sublime Text作为编辑器,不得不说, ...
- Sublime Text增加Build system类型,打造一个全能IDE
Sublime text2是一款非常方便的文本编辑器,现在我基本上不用IDE去编写代码,一般都是在Sublime text2中编辑,当然,这里无法执行.debug是软肋,于是上网找了下资料,可以把添加 ...
- Sublime Text 2 新建C++ build system
首先要有个MinGW(我这里借用ceemple的编译器 ,mingw32) 设置环境变量 右击我的电脑,点属性->高级->环境变量. 在系统环境变量在PATH里加入D:\Ceemple\m ...
- Android开发之深入理解Android Studio构建文件build.gradle配置
摘要: 每周一次,深入学习Android教程,TeachCourse今天带来的一篇关于Android Studio构建文件build.gradle的相关配置,重点学习几个方面的内容:1.applica ...
- sublime text 3中配置golang开发环境
1:首先下载 Go源码 https://golang.org/dl/ [根据不同的环境选择] 2:新建文件项目文件夹 存放 D:/Go_project 分别建立 bin src pkg 子 ...
随机推荐
- css3的box-sizing
给了两个并排带边框的div百分比宽度,假如不用box-sizing,边框的宽度会在行内显示.用box-sizing:border-box,可以去除边框的占位. 浏览器支持IE9以上及火狐.谷歌.Ope ...
- Anton and Making Potions
Anton and Making Potions time limit per test 4 seconds memory limit per test 256 megabytes input sta ...
- WPF Template模版之DataTemplate与ControlTemplate【一】
WPF Template模版之DataTemplate与ControlTemplate[一] 标签: Wpf模版 2015-04-19 11:52 510人阅读 评论(0) 收藏 举报 分类: -- ...
- OpenGL———混合的基本知识
混合是一种常用的技巧,通常可以用来实现半透明.但其实它也是十分灵活的,你可以通过不同的设置得到不同的混合结果,产生一些有趣或者奇怪的图象.混合是什么呢?混合就是把两种颜色混在一起.具体一点,就是把某一 ...
- 函数求值一<找规律>
函数求值 题意: 定义函数g(n)为n最大的奇数因子.求f(n)=g(1)+g(2)+g(3)+-+g(n).1<=n<=10^8; 思路: 首先明白暴力没法过.问题是如何求解,二分.知道 ...
- Android根据Button状态(normal,focused,pressed)显示不同背景图片
Android根据Button状态(normal,focused,pressed)显示不同背景图片 Android中Button 有focused, selected, pressed 等不同状态,通 ...
- 利用Hierarchy Viewer优化布局
好久没更新博客了,趁着清明来写点什么. 今天来讲下如何使用android中提供的工具优化我们的布局.首先我们写一个最简单的框架布局. <?xml version="1.0" ...
- angular实现select的ng-options
html <div ng-controller="ngSelect"> <select ng-model="vm.selectVal" ng- ...
- 利用id来进行树状数组,而不是离散化以后的val HDU 4417 离线+树状数组
题目大意:给你一个长度为n的数组,问[L,R]之间<=val的个数 思路:就像标题说的那样就行了.树状数组不一定是离散化以后的区间,而可以是id //看看会不会爆int!数组会不会少了一维! / ...
- 求余区间的求和类问题 离线+线段树 HDU4228
题目大意:给一个数组a,他的顺序是严格的单调增,然后有如下三个操作 ①加入一个val到a数组里面去,加入的位置就是a[i-1]<val<a[i+1] ②删除一个a[i]=val的值 ③查询 ...