COMPILING ACTIONSCRIPT 3.0 WITH SUBLIME TEXT 2
At Clock we typically spend our time developing JavaScript and PHP, however, occasionally Flash presents itself as the most suitable platform for certain components. To avoid the need of installing a separate authoring environment (and even the license fees associated with some of the official Adobe IDE's) I sought to empower my text editor Sublime Text 2 with the ability to compile SWF's.
Choosing to use a minimalist development environment is invariably going to bring about some limitations, of these I find the most noticeable to be the lack of debugging tools. While I will suggest some means to allow you to receive trace statements to debug your application, if you're developing large and complex applications you may want to consider some other free alternatives: Flash Develop.
Download Flash Compiler and .swf viewing software
If you don't have any kind of flash authoring environment installed, you're going to need to download some software:
- A version of the Flex SDK is needed to compile your application (Version: if you're not sure, the Adobe Flex SDK is likely to be appropriate)
- You'll probably want an SWF debug projector to enable you to run your SWF's on the desktop and provide stack trace output.
- Additionally one of the Plugin content debuggers will be useful for access stack traces in the browser.
You'll notice that the first two of these applications don't come with any kind of installer, it's up to you where you want them, (as a Windows 7 user) I extracted them both into C:\Program Files (x86)\Flex SDK\
Configuring MXMLC as a Build System in Sublime Text 2
Now you've got your Flex SDK extracted you'll want to set it as what's known in Sublime Text as a build system.
In Sublime's menu, access: Tools > Build System > New Build System…
Replace the default build script with the following:
{
"cmd": [
"C:\\Program Files (x86)\\Flex SDK\\bin\\mxmlc.exe",
//"-o", "${project_base_name}.swf",
"${file}"
],
"selector": "source.actionscript"
}
Save this file in Sublime's ActionScript package directory, which for Windows 7 users will be located in C:\Users\[username in here]\AppData\Roaming\Sublime Text 2\Packages\ActionScript\, and restart Sublime. You should now be able to build your flash projects using F7 or Ctrl + b and using the aforementioned SWF projector you'll be able to launch your fresh SWF from your file system.
Sublime's Build System Notes
The selector option will make sublime choose our new build system automatically when you build directly from the source view of an ActionScript file. In the example above you'll see that my Windows file system requires me to escape the directory separator. You'll have to modify this path if you're on a different Operating System or you selected a different place for your Flex SDK to live. One thing which caught me out was providing additional command line parameters to Sublime, they must be provided as per the -o option above. Individual option flags and their attribute must be placed into separate elements in the cmd array for Sublime to execute them correctly. I've left in the above example as a reference to this.
Hello World
As requested, here is a little Hello World to test your compiling powers:
package {
import flash.display.Sprite;
import flash.text.TextField;
// import flash.external.ExternalInterface;
public class HelloWorld extends Sprite {
public function HelloWorld () {
// ExternalInterface.call("console.log('ding')");
var mytextfield:TextField = new TextField();
mytextfield.text = "Hello World!";
addChild(mytextfield);
}
}
}
Debugging Your Flash Applications in a JavaScript Console
Now we've cut the Flash IDE out of the equation, you've actually lost your Flash console meaning your trace() statements aren't going to get shown anywhere, even the flash player debuggers can only output stack traces. The most suitable way I found to output debugging information was by embedding my .swf in a webpage and outputting data to the browsers console. By utilising Flash's ExternalInterface class you're able to invoke javascript functions, more specifically in Firefox the FireBug console, or Chrome's native javascript console.
After importing the class into your application you can simply call the console like so: ExternalInterface.call("console.log('ding')");
This does, however, rely on the fact that you're running your SWF in a browser and importantly that your console is loaded before you call it (Embedding usingSWFObject will help avoid errors relating to this).
If you're Debugging needs go very far beyond this, then its probably time to install a more integrated development environment with native debugging and profiling support.
Refrences and Recommended IDE's
- http://sublimetext.info/docs/en/reference/build_systems.html - Sublimes Build Properties
- http://www.arulraj.net/2010/08/flash-player-debugger-in-ubuntu.html - Installing the Plugin content debugger on Ubuntu
- http://www.flashdevelop.org/wikidocs/index.php?title=Main_Page - Flash Develop IDE
- http://fdt.powerflasher.com/ - FDT, Eclipse based IDE
COMPILING ACTIONSCRIPT 3.0 WITH SUBLIME TEXT 2的更多相关文章
- kali linux 2.0安装sublime text 2
第一种方法:Download the Sublime Text 2 & Extract it:32位:$ wget http://c758482.r82.cf2.rackcdn.com/Sub ...
- Sublime Text 全程指引 by Lucida
作者:Lucida 微博:@peng_gong 豆瓣:@figure9 博客园:@figure9 原文链接:http://zh.lucida.me/blog/sublime-text-complete ...
- centos6.5安装sublime text 2
今天在看ueillemmx的博客的时候,看到一神级编辑器,随即安装试了试,我了个去,果然好用,自动补全,自动对齐,样样精通啊! 下面是根据ueillemmx的步骤在CentOS上安装Sublime的过 ...
- Sublime Text 全程指南
摘要(Abstract) 本文系统全面的介绍了 Sublime Text,旨在成为最优秀的 Sublime Text 中文教程. 更新记录 2014/09/27:完成初稿 2014/09/28: 更正 ...
- Sublime Text使用教程【转】
本文转载自:http://lucida.me/blog/sublime-text-complete-guide/ 摘要(Abstract) 本文系统全面的介绍了 Sublime Text,旨在成为最优 ...
- 右键菜单添加程序,指定图标, Notepad2、Sublime Text 2
右键添加Sublime Text 打开方式 Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\*\shell\Sublime Text] ...
- [笔记]--Ubuntu安装Sublime Text 2
sublime text 2 有两种安装方式,一种是添加软件源,然后用命令安装.另外一种是下载安装包.解压手动安装.Sublime Text 2 入门及技巧 一.下载安装 1.在Sublime Tex ...
- 给sublime text添加ubuntu launcher快捷方式
1.下载sublime text 2文件,解压并复制到/opt目录,文件夹名称不要含有空格 2.在/usr/share/applications目录下新建sublime_text.desktop文件 ...
- ubuntu 下添加sublime text 启动图标
ubuntu下无快捷方式一说,如果想快速打开sublime Text,可以创建sublime text 启动图标 1. 创建空白文档 sublime.desktop,注意权限 $ vi /usr/sh ...
随机推荐
- mac下phpstrom安装主题和主题推荐
phpstorm主题 在mac下finder下command+shift+G键到~/Library/Preferences/PhpStorm2016.2/colors,我的路径可能和你的不同,但是大同 ...
- [JavaScript模块演化简史]摘要
来源于:https://zhuanlan.zhihu.com/p/26231889 # JavaScript 模块化 早期的JavaScript并没有模块化解决方案.随着单页应用与富客户端的流行,出现 ...
- How to Land your Dream Job
今天在code school上面看到一个外国人写的文章,写的很棒,瞧一下外国人的思维和我们有什么不同?分享给所有的朋友 You know how some things ar ...
- Tensorflow结点打包和依赖控制
深度学习库能够充分发挥GPU并行计算的能力,但是有时我们却不得不需要串行.这时就需要用到依赖控制. import tensorflow as tf a = tf.Variable(1) b = tf. ...
- java struts2入门学习---异常处理和类型转换
一.struts2对异常的处理 1.自定义局部异常: <action> <exception-mapping result="sonException" exce ...
- springAOP记录用户操作日志
项目已经开发完成,需要加用户操作日志,如果返回去加也不太现实,所以使用springAOP来完成比较合适. 注解工具类: @Retention(RetentionPolicy.RUNTIME) @Tar ...
- STC单片机串口输出ADXL335角度值
STC单片机串口输出ADXL335角度值: //***************************************************** //名称:单片机串口输出ADXL335角度值 ...
- EF的表左连接方法Include和Join
在EF中表连接常用的有Join()和Include(),两者都可以实现两张表的连接,但又有所不同. 例如有个唱片表Album(AlbumId,Name,CreateDate,GenreId),表中含外 ...
- 那些令人喷饭的代码注释:仅以此代码献给...it's realy ?
程序源代码中的注释经常是一个卧虎藏龙的地方,有人就很喜欢写幽默搞笑的注释内容.解释代码含义的同时,也带给人轻松神经的机会,确实是很有意思的风格,来看看这一辑国外某公司产品中的注释. 注意:看的时候严禁 ...
- User-Agent 信息汇总(拿去就能用)
# encoding=utf- agents = [ "Mozilla/5.0 (Linux; U; Android 2.3.6; en-us; Nexus S Build/GRK39F) ...