[Diary/2011/February]

EmacsでProcessingのコードの編集続き2 / 2011-02-08 (火)

今日

午前中.やはりEmacsでのProcessing環境構築.
結局processing-emacsの中身を変えて使う事に.

午後,3年生の課題発表.

夜,環境構築続き.

Linuxに関しては通常の.emacsに書く設定のみで実行可能.
(ここではprocessing-1.2-1でjavaを含んでいるパッケージを利用)
上記のサイトから落とせるprocessing-mode.elのを読み込み,.emacsを以下のようにする.

(autoload 'processing-mode "processing-mode" "Processing mode" t)
(add-to-list 'auto-mode-alist '("\\.pde$" . processing-mode))
(setq processing-location "~/processing-1.2.1/")

ただし,配布している1.2.1のパッケージの実行ファイルでは,preferences.txtの場所指定は出来ないので,processingの中に入ってる/lib/preferences.txtを,libディレクトリごと,スケッチディレクトリの中に突っ込む必要がある.

OSXの場合,/Applications/以下にProcessing.appが配置されるので,processing-mode.elのパス指定部を以下のように編集する.

;(concat (file-name-as-directory processing-location)
;	  "java/bin/java -classpath \""
(concat "/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Commands/java -classpath \""
	  (apply 'make-java-classpath
		 (mapcar (lambda (x) (expand-file-name (concat processing-location x)))
			 '(
			   ;"java/lib/rt.jar"
			   ;"java/lib/tools.jar"
			   ;"lib/antlr.jar" "lib/core.jar"
			   "Java/antlr.jar" "Java/core.jar"
			   ;"lib/ecj.jar" "lib/jna.jar"
			   "Java/ecj.jar" "Java/jna.jar" "Java/quaqua.jar" 
			   ;"lib/pde.jar")))
			   "Java/pde.jar")))
	  "\" processing.app.Commander"
	  " --sketch=\"" (expand-file-name sketch-dir)
	  "\" --output=\"" (expand-file-name output-dir)
	  ;; Remove this comment when Processing implements the --preferences=??? command-line option.
	  ;;"\" --preferences=\"" (expand-file-name "~/.processing/preferences.txt")
	  "\" --" cmd
	  (if (string= cmd "export-application")
	      (concat " --platform="
		      (if platform platform (processing-platform))))))

Linuxと同様に,lib/preferences.txtをlibディレクトリごとスケッチディレクトリの中に突っ込んでおく.
また.emacsは以下のように.

(autoload 'processing-mode "processing-mode" "Processing mode" t)
(add-to-list 'auto-mode-alist '("\\.pde$" . processing-mode))
(setq processing-location "/Applications/Processing.app/Contents/Resources/")

しかし残念ながら,CarbonEmacsではjavaが実行時にerror=13, Permission deniedを吐いてしまい,実行は不可能だった.
実行のキーバインドはC-c C-rで,この時にcompileメッセージが出てくるので,これをそのままターミナルに貼付けたら実行可能.OSXのjavaとCarbonEmacsの問題なんだろうな多分.
AppleScriptから無理矢理Processing IDEを呼び出す方法でも同じエラーだったし.

とりあえずLinuxでは普通に出来たし,OSXでもEmacsで編集,ターミナルでそのまま実行が可能になったので,ここで諦める.


[Diary/2011/February]

EmacsでProcessingのコードの編集続き / 2011-02-07 (月)

今日

午前〜昼.昨日の夜からやってたEmacsでProcessingやるための環境構築の続き……だが上手く行かず.
AppleScriptで開く方法processing-mode

前者にはProcessing起動のキーバインドの操作部分を入れてみたが,Processing IDEが立ち上がった後のPermissionの問題で上手くいかず.

後者は,まず,LinuxやWindows版向けに作られているらしく,Processing内蔵のJAVAを使うようになっている.
なのでこれをパスや実行ファイル置き換えをやるためにいくつか修正した.

processing-modeがコンパイル→実行で実行するシェルコマンドは,

java -classpath "jarファイルになってるプロセッシングのライブラリ集"
processing.app.Commander 
--scketch="スケッチ(Processingのプロジェクトディレクトリ)のパス"
--output="スケッチの中に作られる実行ファイル?" --run

という形なんだけど,
PreProcessingを行ってくれるはずのProcessing本体であるらしいprocessing.app.Commanderというクラスを探そうとするのだが,これがprosessing内に含まれていない(Linux版も).
OSXだと,IDE実行ファイルであるらしいProcessing.app/Contents/MacOS/JavaApplicationStub(Linuxだと,processingという実行ファイル)に渡してやればいいのかと思ったが,そうでもないらしい.
つまり,このクラスを含んでいるjarが見つからないということか.

訂正:環境によってjavaのVMそのものを含んでいるかいないかの違いで,パス指定が複雑になっているだけでした.

午後,書類作成.

夜,しょうがないので,Processingの通常のIDEで書き始める.以前やってたEclipse使って,ProcessingをJAVAアプリケーションとして開発する方法も悪くはないのだが……うーん.

あとベツXバラの2巻の発売.


[Diary/2011/February]

EmacsでProcessingのコードの編集 / 2011-02-06 (日)

今日

午前〜夕方,今週SuperCollider上に実装していたLinear GPによるBGMっぽい音楽生成のデバッグ.
ほぼ完成.旋律パターンの生成やGPとのマッピングの実装で結局一週間かかってしまった.

夜.卒展の打ち上げ.

その後,Processingで,BGM生成のGUIを作成開始.
Processing.jsが出てきてから,Web環境で実行できなくて敬遠されていたProcessingが,結構有効になりつつあると思う.
ま,今回自分はローカルファイルシステムへのアクセスとOpenSound Controlが必要なので,Processing.jsではないのだけれど.

Emacs で processingのファイルを編集する - hibomaのはてなダイアリーを参考に環境構築.

一応,processing-emacsなるものもあるようだけど,そこまでアレというか.

SuperCollider sclangの再帰関数の書き方

濱野君から教えてもらった.
自分自身を呼び出すとき中括弧でくるみ,新たに関数を作る事を明示的に指示するのがミソのようだ.

{arg i; 
      (i=i+1).postln;
      if((i<10), {thisFunction.value(i)}, { nil });
}.(0);

[Diary/2011/February]

卒展 / 2011-02-05 (土)

今日から首都大学東京システムデザイン学部インダストリアルアートコースの卒業展覧会やってます.

今日

午前,昨日の続きで,SuperColliderのLinear GPのMutasynth型プロシージャの実装.

午後,卒展の人間工学研究室と芸術学研究室の口頭発表を聞く.

夜,午前の続きのテスト用GUIシミュレータの実装と,その仕様に伴い発見されたバグのデバッグ.
あとはリズムパターン生成部の追加.


[Diary/2011/February]

アートコースでの人工無能実習 / 2011-02-04 (金)

今日

午前,昨日の続きでSuperCollider上に実装しているLinear Genetic Programmingのプロシージャの実装.

午後,ネットワークの授業のTwitter Botの課題の講評会.
その名の通りコンセプトを持ったBotを作ってそれについて発表する,という課題.
通常の工学部の実験みたいな人工無能の設計と実装という進め方をしたのは10人ぐらいのうち1人で,後は文系的な進め方,思いっきりアート的な進め方の2通り.
botに対するアイデアが色々出てきて面白い.

夜,Mutasynth型GUIを人間が操作する状況のシミュレータを実装.テストしながら.
進化計算のGUIを人間が操作している様子のシミュレータという発想は,高木先生のところがやってる.

[ ツッコミの受付は終了しています ]
この記事のリンク元 | 1 | 1 |