macにActionScript3.0のコマンドラインベースの開発環境構築

環境:Leopard(10.5.8), MacBookPro(Early2008), Ruby 1.8.6


ActionScriptを少し触ることになったので、快適そうな開発環境を整えてみた.


まず,エディタはvimを使いたいのでASのシンタックスファイルを探す.
こちらのページ(http://blog.quall.net/program/231/)を参考にさせて頂き,
シンタックスファイルは下記サイトから頂戴しました.
http://www.abdulqabiz.com/blog/archives/flash_and_actionscript/vim_actionscript_and.php


次にコンパイル等の環境は下記のサイトを参考に,FlexSDK + rascutをインストール.
http://yoppa.org/ssaw08.php?itemid=831
http://builder.japan.zdnet.com/sp/open-source-software-moonlinx-2009/story/0,3800096543,20398746,00.htm
http://as-users.jp/helloworld/index.html


下記ページからFlex SDKをダウンロード.
http://opensource.adobe.com/wiki/display/flexsdk/Flex+SDK
今回入れたのはVersion 3.5.0 build 12683.
インストール先は/Developer/SDKs/
パスとなんかのおまじないを.bash_profileに追加
(Flex SDKディレクトリ名は適宜読み替え)

export PATH=/Developer/SDKs/flex_sdk_3/bin:$PATH
export _JAVA_OPTIONS="-Duser.language=en -Dfile.encoding=UTF-8"

このおまじないはコンパイラが日本語で起動して不具合を起こすのを避けるためらしい.
mxmlcというコマンドがあるか確認.whichコマンドってのを使うといいらしい.

$ which mxmlc
/Developer/SDKs/flex_sdk_3.5.0.12683/bin/mxmlc

今まで,コマンドがあるか確認するのって2,3文字打ってタブで補完されるかどうかで確認してたw


続いて,rascutをインストールするが,Rubyのバージョンが1.8.6でないとダメらしい.

$ ruby --version
ruby 1.8.6 (2008-08-11 patchlevel 287) [universal-darwin9.0]

何もいじってないと思うが,とりあえずOK.

$ sudo gem install rascut --include-dependencies

これいっぱつでいけるはずだったのにrascutがローカルにもリポジトリにもないと言われる.
これはgemのバージョンが古かったためらしいのでgemを更新.

$ sudo gem update --system

もともとのバージョンはわからなくなってしまったが,とりあえずRubyGem 1.3.5ってのになった.
再びrascutをインストールしてみるとすんなり通って,
json_pure-1.2.0
rascut-0.2.1
がインストールされた.
mongrelってやつはもとから1.1.4ってのが入っていたっぽい.


とりあえず,これで環境は整ったと思うのでHelloWorldさんを試してみる.

$ rascut -s HelloWorld.as 
[01/13 04:44:57] Start Mongrel: http://0.0.0.0:3001/
[01/13 04:44:57] Compile Start
[01/13 04:44:58] Found update file(s)["./HelloWorld.as", "./omikuji.as"]
[01/13 04:45:03]  fcsh: Assigned 1 as the compile target id
Loading configuration file /Developer/SDKs/flex_sdk_3.5.0.12683/frameworks/flex-config.xml
/Volumes/HDD2/WorkingDir/asTest/HelloWorld.swf (607 bytes)

ブラウザで http://0.0.0.0:3001/ にアクセス.


すばらしい!!
なんか別のASファイルも更新を確認してくれてるしw


ASもちょこっと触るだけだとは思うが,とりあえずすばらしい!