2007年 06月 12日

シングルタスク・シングルスレッド・シングルプロセス

プログラミのことが気になってるときはほんとプログラミのことしか集中できない。それはそれでいいのだけれど、他の場合だとちょっとまずい。写真撮りたいと思ってるときはプログラミできない。これって数日から数週間持続してしまうから、その間にとりのこされたりする。

いつだってやりなおせるかもしれないけれど、自分は自分に対してそんなに期待できないし、やりなおすモチベーションが沸いてくるかに疑問を持っている。だから選択は最初にまず慎重でなければならなくて、さらにそれがダメなときに一段階落ちておける場所がないといけない。裏切らない選択肢はあるけど、それもあんまり信じられない。実際それを実行してどうなるか疑問だ。生きているだけが全てではない、とは思うけれど、実際自分は物を感じているから。

昨日の就寝時間

そういえば4:30まで寝れなかった。


カヤック星人は CCPL だと聞いたのですが、どのライセンスだろう。

setter

@textfield.stringValue += "aaa"

とか書けて楽だなぁ

2007年 06月 11日

やーやー

夢の中に可愛い女の子がでてくるせいで起きられない。

vim changelog

changelog のときは \o おすと追加される

let g:changelog_timeformat = "%Y-%m-%d"
let g:changelog_username   = "SATOH Hiroh <cho45@lowreal.net>"

を追記した

日記

某イラスト系のアレで日記となのってるところがあるけれど、あれ (どれ) は日記じゃなくてブログだと思う。

rubycocoa create

なまえがまずい気がする。いいかなぁ。( http://rubycocoa.svn.sourceforge.net/viewvc/rubycocoa?view=rev&revision=1834 )

rubycocoa new Sample
cd Sample
rubycocoa create --action hello AppController
vim AppController
rubycocoa update English.lproj/MainMenu.nib AppController.rb
open English.lproj/MainMenu.nib # instantiate / connect
rake add AppController.rb
rake # launch

create したら同時に add したほうが忘れなくていいかな。
rake create, rake update をつくって委譲するみたいな感じのほうがよさそう。rubycocoa ってながいのと補完が効かない (ruby, ruby1.9 が PATH にあるので一発ででてこない) のと、どっちつかったらいいか謎いのが不親切。

  • add するときプロジェクト内にファイルが既に存在するかチェックしないとまずい

あーだめだなぁ。rake create -a hello AppController.rb とかやると、タスクが実行されるまえに -a を Invalid Option って判断して終了してしまう。

rake tasks for rubycocoa

http://rubycocoa.svn.sourceforge.net/viewvc/rubycocoa?view=rev&revision=1836

if ["update", "add", "create"].include? ARGV[0]
  # dupe rake
  ARGV.map! {|a| a.sub(/^¥+/, "-") }
  Rake.application[ARGV[0].to_sym].invoke
  exit
end

こんなん書いてしのいでみた。なんてキモいんだろう。これで rake から create したときは add も同時にされるようになり、add のときに Xcode project ファイルを指定する必要がなくなり、update のときもテンプレで最初から入ってる nib を更新するようになった。

rubycocoa new Sample
cd Sample
rake create +a hello AppController # ハイフンにすると rake が解釈しちゃうのでしかたなく……
vim AppController.rb
rake update AppController.rb
open English.lproj/MainMenu.nib
rake

update は updatenib とかいうタスク名にしないとわけわかんない気がする

rubycocoa 側の機能にするか、rake タスクにするかで悩むけれど、rake タスクにしとけば自分でいぢれるようになるので rubycocoa 側はそんなにいろんなことしなくていいかなぁと思う感じにしてみている。なので rake タスクも Rakefile 直書きでライブラリとかにしてない。

2007年 06月 10日

ペヤングソースやきそば

スパイスとふりかけが入ったふくろがあるけど、キザキザのはいっている位置が違うことがある。いっきに二つともあけられる方向のほうがアタリだと思う。

obj.to_plist, OSX.load_plist

こんなのあったんだ……

rubycocoa

できてるところまでチェックイン。インデントの設定とかを完全に忘れてた。2スペースインデントらしいのでそっちの流儀にあわせた (スペースインデントすることよりも、全体で統一されていないことのほうがまずい) newcocoa と rb_nibtool.rb 相当のことはできるはず、だけれど、テンプレの Rakefile を書いていないのでうまみがすくない。

テストを tests/ においたほうが良いっぽい。とりあえず既存のテストを AutoRunner するだけにしとこう。

  • Rakefile 書いてない
  • Xcode 関連も書いてない

窓からはいってくる風の匂いが素敵すぎる

rubycocoa Rakefile

一番簡単なテンプレにだけとりあえず Rakefile を追加。内容はほとんど [Rubycocoa-devel 906], [Rubycocoa-devel 907] のコピペ。
引数なし rake でビルドからアプリケーション起動までやるようにしてみて、ためしに Hello World を Console.app に表示するやつを作ってみたけど、Interface Builder で繋ぐ部分だけ GUI であとは CUI でできるようになって結構気持ちいい。Interface Builder でアクションとか設定するより Ruby 定義から update するのが便利だなぁ。

rubycocoa create AppController.rb とかやるとクラス定義ふくんだ (awakeFromNib とかを定義ずみの) スケルトンつくれるともうちょい楽かなぁ。

  • standalonefy.rb くみこみ
  • package (.dmg) つくるタスクかく
  • publish するタスクかく

ChangeLog

そういえば書いてない。commit log とは別に書かないといけないのかな。svn log すると ChangeLog 形式のログがでてくるけれど、これはコピペで svn と ChangeLog どっちも書いてるのかなぁ。あとあとさかのぼって書いてもいいのか謎

コピぺらしい。なるほど