textmateのbundleをgitで管理

rspec2.4入れて、cucumberのfeaturesをtextmateで保存すると
popupでwarningが表示されるようになったので
textmate bundleを更新しようと思い立ちました。


当初は更新するだけのつもりでしたが、気がつくと git submoduleで管理していました。
昔は GetBundle っていうsvnリポジトリを参照して更新するbundleがあったんですが
今は使えなくなってます。

まずは

.gitで管理されているGit.tmbundleを更新(git pull)してみると
README.textile だけになっちゃいました。


なんじゃこらと、中身を読んでみると最新はgithubへと書いてあります。
http://github.com/jcf/git-tmbundle
元はこちら(git://gitorious.org/git-tmbundle/mainline.git)

githubからgit clone

githubを検索してみると
元々svn管理していたbundleもgithubへ移行しているみたい。

svn

もともとはこっちね。
TextMate Bundles


じゃぁ、git submodule 使えるね

ということで実施。
githubにリポジトリhttps://github.com/rochefort/tmbundles)作成して
git submodule add。

git submodule add https://github.com/textmate/bundle-development.tmbundle.git
git submodule add https://github.com/textmate/c.tmbundle.git
git submodule add https://github.com/textmate/javascript.tmbundle.git
git submodule add https://github.com/textmate/objective-c.tmbundle.git
git submodule add https://github.com/textmate/perl.tmbundle.git
git submodule add https://github.com/textmate/php.tmbundle.git
git submodule add https://github.com/textmate/python.tmbundle.git
git submodule add https://github.com/textmate/ruby-on-rails.tmbundle.git
git submodule add https://github.com/textmate/ruby.tmbundle.git
git submodule add https://github.com/textmate/source.tmbundle.git
git submodule add https://github.com/textmate/text.tmbundle.git
git submodule add https://github.com/textmate/textmate.tmbundle.git

git submodule add https://github.com/aslakhellesoy/cucumber-tmbundle.git Cucumber.tmbundle

git submodule add https://github.com/rspec/rspec-tmbundle.git RSpec.tmbundle

git submodule add https://github.com/jcf/git-tmbundle.git Git.tmbundle

git submodule add https://github.com/subtleGradient/javascript-tools.tmbundle.git JavaScript-tools.tmbundle

課題

zen codingのbundleはgoogleなので手動です。
あと、よく使うバンドルをちょこっといじっていたのを忘れていました。
textmateに共通Languageを定義 - うんたらかんたら日記


これでは、 git remote update で一括更新できない。。。

あと余談ですが

.tmbundleファイルをダブルクリックすると
~/Library/Application Support/TextMate/Pristine Copy
へ置かれる仕様なようです。

追加

rspec bundleはRUBYOPTを設定しないと実行時にエラーになる。
readme抜粋(rspec/rspec-tmbundle - GitHub

open up TextMate Preferences
go to the Advanced tab
add a variable named RUBYOPT with the value rubygems