开发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的更多相关文章

  1. 配置Sublime Text 3的Python开发环境

    最近的项目是用Python开发自动化测试脚本的,所以使用Python比较多.我用的编辑器是Sublime Text3. Sublime Text 3是一个轻量级的跨平台文字编辑器,一经面世便被认为是一 ...

  2. 【Nodejs】【node.js 安装 和 配置Sublime Text的Node.js】

    [一] [安装nodejs] 第一步:下载安装文件: https://nodejs.org/en/download/ 第二步:安装nodejs 下载完成之后,双击"node-v6.10.1- ...

  3. node.js 安装 和 配置Sublime Text的Node.js

    安装node.js 第一步:下载安装文件: https://nodejs.org/en/download/ 第二步:安装nodejs 下载完成之后,双击"node-v6.10.1-x64.m ...

  4. 配置 Sublime Text 3 作为Python R LaTeX Markdown IDE

    配置 Sublime Text 3 作为Python R LaTeX Markdown IDE 配置 Sublime Text 3 作为Python IDE IDE的基本功能:代码提醒.补全:编译文件 ...

  5. Golang (Go语言) Mac OS X下环境搭建 环境变量配置 开发工具配置 Sublime Text 2 【转】

    一.安装Golang的SDK 在官网 http://golang.org/ 直接下载安装包安装即可.下载pkg格式的最新安装包,直接双击运行,一路按照提示操作即可完成安装. 安装完成后,打开终端,输入 ...

  6. windows下配置Sublime Text 2开发Nodejs

    1 下载 Sublime Text 2 http://www.sublimetext.com/ 2 下载Nodejs插件,下载ZIP包 https://github.com/tanepiper/Sub ...

  7. 配置sublime text 3 的Python开发环境

    为了在sublime实现像Python自带idle一样的F5交互功能: 首先安装package control然后install Sublime REPL:然后配置 Preference-->P ...

  8. Nodejs开发(1.Sublime Text 3配置)

    本例使用Sublime Text 3开发 原因: 1. 有开发提示: 2. 非常easy的调试运行: 下载Sublime Text 3,官网地址:http://www.sublimetext.com/ ...

  9. 详细说明 配置 Sublime Text 开发node.js(windows)包括sub2和sub3的区别

    1.先安装Sublime Text  2或者3皆可 2.下载 sublime Text 的nodejs插件 得到那个zip包(后面会介绍用Package Control安装) 3.下载后解压 直接改名 ...

随机推荐

  1. Tomcat配置连接c3p0连接池

    一.Tomcat配置JNDI资源 JNDI(Java Naming and Directory Interface),Java 命名和目录接口. JNDI的作用就是:在服务器上配置资源,然后通过统一的 ...

  2. async await的使用

    var sleep = function (time) { return new Promise(function (resolve, reject) { setTimeout(function () ...

  3. stm32f10x单片机进阶--spi使用

      使用SPI与外部flash(MX25L6406EM21)IC通信 连接方式                    如上图所示,MCU通过SPI2与外部flash芯片进行相连接. MCU spi2初 ...

  4. Django2.0之后使用外键时遇到 __init__() missing 1 required positional argument: 'on_delete'

    1.Django2.0之后使用外键时遇到 __init__() missing 1 required positional argument: 'on_delete' 需要在外键创建时给on_dele ...

  5. git杂记-撤销操作

    覆盖上一次的提交或重新更新提交说明 $ git commit --amend -m '我再次提交啦,上一次的提交已经不见啦.这是一个危险的操作哦.哈哈,其实并不危险,也是可以数据恢复的啦' 取消已暂存 ...

  6. 03.CSS选择器-->交集并集选择器

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. Maven-pom-configuration

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...

  8. Python爬虫框架Scrapy教程(1)—入门

    最近实验室的项目中有一个需求是这样的,需要爬取若干个(数目不小)网站发布的文章元数据(标题.时间.正文等).问题是这些网站都很老旧和小众,当然也不可能遵守 Microdata 这类标准.这时候所有网页 ...

  9. Android 虚拟多开系列二——技术原理

    目录         Android虚拟多开应用有哪些?         Android虚拟多开应用技术原理有哪几类?         Android虚拟多开需求分析         反虚拟多开技术 ...

  10. java中方法调用在内存中的体现

    在java中,方法以及局部变量(即在方法中声明的变量)是放在栈内存上的.当你调用一个方法时,该方法会放在调用栈的栈顶.栈顶的方法是目前正在执行的方法,直到执行完毕才会从栈顶释放.我们知道,栈是一种执行 ...