wonderfl build flash onlineでActionScriptを書いてみたくなったので、勉強してみようと思いつつも、やっぱりWeb上だけでなく自分のローカル環境でも開発できた方が何かと便利かな?と思って開発環境を整えてみた。
SDK
やっぱり無償で使えるモノ、ということでここから
第1回 無料でFlash作りに挑戦!Flex 3 SDKを導入してみよう:プログラマのためのFlash遊び方|gihyo.jp … 技術評論社
以下のページからFlex SDKをダウンロード。
無償のオープンソースフレームワーク | Adobe Flex
適当なところに展開してパスを通す。
"Hello world!"を書いてみる
package { import flash.display.Sprite; import flash.text.*; public class Hoge extends Sprite { public function Hoge() { // write as3 code here.. var tf:TextField = new TextField(); tf.text = "Hello World!!"; addChild(tf); } } }
よくわかってないけど、こんなカンジ?
$ mxmlc Hoge.as 設定ファイル "/Developer/SDKs/flex/frameworks/flex-config.xml" をロードしています /Users/sugyan/codes/lang/as/hoge/Hoge.swf (624 bytes)
なんか出来たっぽい。けっこう時間かかるのね…
EmacsでActionScriptを書くために
標準では入っていないようだけど、当然actionscript-mode.elというものが存在する。
http://blog.pettomato.com/?p=22
ここからダウンロードして、Emacsのloadパスを通す。イイカンジで色付けしたりしてくれるっぽい。細かい設定はあとで見てみよう
rascutというのがイケてるらしい
ファイルの変更を監視して自動コンパイルしてくれて、ブラウザをリロードしてくれるとか。
rubyで動いているらしい。下記を参考にgemを使ってインストールしてみる。
ActionScript やるなら入れとけ。rascut 導入と使い方。 - てっく煮ブログ
$ sudo gem install rascut --include-dependencies
0.2.1というのが入った。環境変数を変更するとかのパッチは必要なく動いた。
使ってみる
$ rascut Hoge.as [01/02 02:41:48] Compile Start [01/02 02:41:49] Found update file(s)["./Hoge.as"] [01/02 02:41:50] fcsh: Assigned 1 as the compile target id Loading configuration file /Developer/SDKs/flex/frameworks/flex-config.xml /Users/sugyan/codes/lang/as/hoge/Hoge.swf (625 bytes) [01/02 02:42:05] Found update file(s)["./Hoge.as"] [01/02 02:42:05] Compile Start [01/02 02:42:05] Loading configuration file /Developer/SDKs/flex/frameworks/flex-config.xml Recompile: /Users/sugyan/codes/lang/as/hoge/Hoge.as Reason: The source file or one of the included files has been updated. Files changed: 1 Files affected: 0 /Users/sugyan/codes/lang/as/hoge/Hoge.swf (622 bytes)
ファイル変更する度にコンパイルし直してくれるっぽい。
サーバーモード
rascutの"-s"オプションを使うとブラウザで自動リロードまでしてくれるそうで。
$ rascut -s Hoge.as [BUG] cross-thread violation on rb_gc() ruby 1.8.6 (2008-08-11) [universal-darwin9.0] zsh: abort rascut -s Hoge.as $ rascut -vs Hoge.as [01/02 02:45:24] config{:observe_files=>["."], :ext=>["as", "css", "mxml"], :fcsh_cmd=>"fcsh", :logger=>#<Rascut::Logger:0x56cdf4 @progname=nil, @logdev=#<Logger::LogDevice:0x56cda4 @dev=#<IO:0x2ddd4>, @shift_size=nil, @shift_age=nil, @filename=nil, @mutex=#<Logger::LogDevice::LogDeviceMutex:0x56cd7c @mon_entering_queue=[], @mon_count=0, @mon_owner=nil, @mon_waiting_queue=[]>>, @level=0, @formatter=nil, @default_formatter=#<Logger::Formatter:0x56cdcc @datetime_format=nil>>, :interval=>1, :compile_config=>nil, :file_observing=>true, :server=>true} [BUG] cross-thread violation on rb_gc() ruby 1.8.6 (2008-08-11) [universal-darwin9.0] zsh: abort rascut -vs Hoge.as
んんん…よくわからないけどportsで入れたrubyがthreadまわりでうまく動かない?
プリインストールされてるrubyの方だと大丈夫なようなのでこれで凌いでみる
$ /usr/bin/ruby /opt/local/bin/rascut -s Hoge.as
とりあえず今日はここまで。
とても参考になったページ
Flex SDK + Emacs + actionscript-mode.el + rascut + log.asで快適ActionScript開発環境 | ソフトウェア開発の株式会社システムフレンド
宣伝
これから色々なコードを弄って勉強したいので、ビギナーの僕が楽しんで勉強できるコードを作って下さい!
はじめてのActionScript |nengafl |争奪10万円 FORK合戦!