结合cocos2d-x开发配置sublime text
开发cocos2d-x前端的非核心开发人员对于编辑器的选择,多数的选择有两个,一个是传统的ultraedit,另外的就是现在很流行的sublime text.以前我是比较喜欢用ultraedit的,但是现在用了一段时间的sublime text,也渐渐的喜欢它了,确实是比较方便.
对于cocos2d-x前端的开发,主要是针对lua+c++开发,我们并不期望逻辑程序员做c++部分接口开发的事情,所以只是对于用封装好的c++接口,使用lua去做业务逻辑部分开发,sublime需要配置一些基础的功能,例如,能够自动编译,能够快捷运行,拥有指定工作目录的功能,能够提供模板代码生成的功能. 有了这些基础的功能,相信已经足够了.主要针对这些功能,我花费了一点点时间结合cocos2d-x的项目做了一下配置.
我们都知道,cocos2d-x 3.x版本提供了cocos来对项目进行创建,平台编译与发布等一系列工作.但是都需要在win shell窗口下面去做这些事情,方便是方便了,可是在深层次的目录下面切换,还是太人性化,至少作为程序员,应该找得到更简洁的方法.错了,是一个会自己思考的程序员.
我显示针对win32和android平台写了一些脚本,放在项目文件夹下面的一个单独的目录中-scripts.有创建项目的,win32编译的,以及android编译的,当然还可以根据自己的需求去添加debug/release版本的,发布版本的脚本.这些呢,都没什么技术含量,只是将cocos2d-x提供的cocos写在脚本里面,相信略微熟悉win shell的同学都很容易做得到,就不提了.
create-project.cmd脚本代码如下:
@echo off
setlocal :start
cd ../ && cocos new xiaoyan -p com.respawn.xiaoyan -l lua -d .
pause
compile-win32脚本如下:
@echo off
setlocal :start
cd ../xiaoyan && cocos compile -pwin32 -j4
pause
如果说只是将win shell操作变为鼠标点击操作,那么我们做这些事情的意义并不大.下面就看看如何配置sublime text.
xiaoyan.sublime-build如下:
{
"cmd": ["C:\\Users\\Administrator\\Desktop\\xiaoyan\\scripts\\compile-win32.cmd"],
"working_dir": "C:\\Users\\Administrator\\Desktop\\xiaoyan\\xiaoyan",
"shell": true,
"encoding":"utf-8",
"variants":
[
{
"name": "Run",
"cmd" : ["C:\\Users\\Administrator\\Desktop\\xiaoyan\\xiaoyan\\runtime\\win32\\xiaoyan.exe"]
}
]
}
这里部分是针对我的项目做的配置,可以根据自己的情况做一些更改.默认在ctrl+b执行build的时候调用的是compile-win32脚本.运行的时候指定了工作目录.因为cocos2d-x在cmakelist文件中执行有pre_build命令,作用就是将src,res下面的脚本和资源文件全部都拷贝到runtime/platform(runtime/win32[|android|ios])下面,对于不参与核心模块开发的人员来说, 只是需要编辑脚本就好了,如果是直接编辑runtime下面的脚本,目录层次有点太深了,不如直接编辑项目目录下面的脚本更好点.另外我也配置了快捷键,如下:
[
{ "keys": ["alt+f1"], "command": "toggle_side_bar" }, { "keys": ["f5"], "command": "build" },
{ "keys": ["f10"], "command": "build", "args": {"variant": "Run"} },
]
这些事情是挺简单的,稍微花费一点时间就可以处理的好.为此,我在项目中单独创建了一个subl-supports目录,用来存放和subl配置相关的东西(subl是*linux下面的命令,我习惯这么叫).这样做也是有目的的,后面还会提供更多的sub的snippets,像是注释,代码模板这样子的.也是为了规范代码,节省时间做考虑.在使用的时候只需要将这些文件拷贝到subl package目录下面就好了.
如果我在项目初期参与核心framework开发,我会先做好这些事情,然后再慢慢的添加需要的编辑器支持,逻辑程序员只是需要简单的同步版本库的文件,就可以享受开发的快捷了.我始终坚信,想要成为一名主程,要做的就是为小弟们提供各种技术支持,各种工具支持.做不到这些的,是不是应该自己思考一下,自己做的是不是很欠缺.
结合cocos2d-x开发配置sublime text的更多相关文章
- 配置Sublime Text 3的Python开发环境
最近的项目是用Python开发自动化测试脚本的,所以使用Python比较多.我用的编辑器是Sublime Text3. Sublime Text 3是一个轻量级的跨平台文字编辑器,一经面世便被认为是一 ...
- 【Nodejs】【node.js 安装 和 配置Sublime Text的Node.js】
[一] [安装nodejs] 第一步:下载安装文件: https://nodejs.org/en/download/ 第二步:安装nodejs 下载完成之后,双击"node-v6.10.1- ...
- node.js 安装 和 配置Sublime Text的Node.js
安装node.js 第一步:下载安装文件: https://nodejs.org/en/download/ 第二步:安装nodejs 下载完成之后,双击"node-v6.10.1-x64.m ...
- 配置 Sublime Text 3 作为Python R LaTeX Markdown IDE
配置 Sublime Text 3 作为Python R LaTeX Markdown IDE 配置 Sublime Text 3 作为Python IDE IDE的基本功能:代码提醒.补全:编译文件 ...
- Golang (Go语言) Mac OS X下环境搭建 环境变量配置 开发工具配置 Sublime Text 2 【转】
一.安装Golang的SDK 在官网 http://golang.org/ 直接下载安装包安装即可.下载pkg格式的最新安装包,直接双击运行,一路按照提示操作即可完成安装. 安装完成后,打开终端,输入 ...
- windows下配置Sublime Text 2开发Nodejs
1 下载 Sublime Text 2 http://www.sublimetext.com/ 2 下载Nodejs插件,下载ZIP包 https://github.com/tanepiper/Sub ...
- 配置sublime text 3 的Python开发环境
为了在sublime实现像Python自带idle一样的F5交互功能: 首先安装package control然后install Sublime REPL:然后配置 Preference-->P ...
- Nodejs开发(1.Sublime Text 3配置)
本例使用Sublime Text 3开发 原因: 1. 有开发提示: 2. 非常easy的调试运行: 下载Sublime Text 3,官网地址:http://www.sublimetext.com/ ...
- 详细说明 配置 Sublime Text 开发node.js(windows)包括sub2和sub3的区别
1.先安装Sublime Text 2或者3皆可 2.下载 sublime Text 的nodejs插件 得到那个zip包(后面会介绍用Package Control安装) 3.下载后解压 直接改名 ...
随机推荐
- Tomcat配置连接c3p0连接池
一.Tomcat配置JNDI资源 JNDI(Java Naming and Directory Interface),Java 命名和目录接口. JNDI的作用就是:在服务器上配置资源,然后通过统一的 ...
- async await的使用
var sleep = function (time) { return new Promise(function (resolve, reject) { setTimeout(function () ...
- stm32f10x单片机进阶--spi使用
使用SPI与外部flash(MX25L6406EM21)IC通信 连接方式 如上图所示,MCU通过SPI2与外部flash芯片进行相连接. MCU spi2初 ...
- Django2.0之后使用外键时遇到 __init__() missing 1 required positional argument: 'on_delete'
1.Django2.0之后使用外键时遇到 __init__() missing 1 required positional argument: 'on_delete' 需要在外键创建时给on_dele ...
- git杂记-撤销操作
覆盖上一次的提交或重新更新提交说明 $ git commit --amend -m '我再次提交啦,上一次的提交已经不见啦.这是一个危险的操作哦.哈哈,其实并不危险,也是可以数据恢复的啦' 取消已暂存 ...
- 03.CSS选择器-->交集并集选择器
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Maven-pom-configuration
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...
- Python爬虫框架Scrapy教程(1)—入门
最近实验室的项目中有一个需求是这样的,需要爬取若干个(数目不小)网站发布的文章元数据(标题.时间.正文等).问题是这些网站都很老旧和小众,当然也不可能遵守 Microdata 这类标准.这时候所有网页 ...
- Android 虚拟多开系列二——技术原理
目录 Android虚拟多开应用有哪些? Android虚拟多开应用技术原理有哪几类? Android虚拟多开需求分析 反虚拟多开技术 ...
- java中方法调用在内存中的体现
在java中,方法以及局部变量(即在方法中声明的变量)是放在栈内存上的.当你调用一个方法时,该方法会放在调用栈的栈顶.栈顶的方法是目前正在执行的方法,直到执行完毕才会从栈顶释放.我们知道,栈是一种执行 ...