2012年
2014年
本当に遅くなりました。。。
.cakeって何?
こんなのです。
gist4049895
この.cakeをいろいろなエディタ用のCakePHP拡張で便利機能を提供するための情報として使おうというイメージです。
そもそもの誕生の経緯というか原因は、おそらくCakePHP2系から、デフォルトではapp/ディレクトリにあるModel/ディレクトリやController/ディレクトリを簡単に移動できるようになったからかなーと思います。いわゆるApp::build()ですね。
というのも、例えば自分が開発しているEmacs用のCakePHP拡張のcake2.elを例にとると、ファイルスイッチ系の便利機能(M<->V<->Cの移動とか)の実装は、app/ディレクトリ以下にModel/ディレクリやController/ディレクトリがある前提で作ってしまっています。
そのように「決め打ち」で作っていると、いざApp::build()でディレクトリ構造を変えられてしまうと途端に機能しなくなります。
CAKE_CORE_INCLUDE_PATHで定義されるCakePHPのコアディレクトリもよくドキュメントルートから退避させることがありますね。
(例えばディレクトリパスのような)CakePHPプロジェクトの情報をいい感じにエディタ用CakePHP拡張に渡すためのファイルが.cakeです。
dotcake organizationって何?
https://github.com/dotcake
エディタ用CakePHP拡張の作者を集めて.cakeの仕様などを検討したりしなかったりするGitHubのorganizationです
.cakeは、もともとはVim用のCakePHP拡張のcake.vimで使われているJSONファイルで、最近やっとcake2.elでも活用できるようになりました。
それなら他のエディタ用のCakePHP拡張でも使えた方がいいですし、もしくはCakePHP拡張の作者が「いざ.cakeを活用しよう」と思ったときに活用しやすいもののほうがいいです。
各エディタのCakePHP拡張は独自の進化をしていますからね。
また、そろそろCakePHP3が出てきます。CakePHP1、2、3で.cakeが使えたらいいですよね。
あと、面白いことに 各エディタのCakePHP拡張の作者のほとんどが日本人 なんですよね。そんな作者同士でワイワイできたらいいんじゃないかなーと。各エディタごとで孤独ですから。
Sublime Text2のCakePHP拡張の作者さんも誘いたいです!
とりあえずdotcake organizationでやってみたいこと
.cakeの仕様を固めていきたいです
CakePHPプロジェクトから.cakeを生成するCakePHP Plugin Dotcake を作りました。ただこれはある意味ディスカッションのための実装であり、最終的には仕様に沿ったを.cakeを出力するための実装です。
おそらく、cake.vimは相対パスにまだ対応していないので読み込めないですし、cake2.elではちょっと無駄な情報が入ってしまっています。
ただ、CakePHPからすると素直に出力してみているので、まずはこれを元にいろいろ話し合いができたらなあと思っています。
各CakePHP拡張の機能について情報交換してみたいです
当然かもしれませんが、他のエディタのCakePHP拡張の機能を全て把握いるわけではありません。他の拡張の便利機能があったら パクりたい参考にしたいですし、内部の実装方法のアイデアとかも知りたいです。
とはいえ
まあなんとなく organization所属ってカッコいい気がする ので、dotcake organizationを作っただけで八割方満足しました。
というわけで
「はじめました」報告でした。