2012年
@k1LoW ずいぶん昔の話ですいません!cake.elとcake.vimで参照する設定ファイルをapp/.cakeに置く案の話なのですが、json形式とかどうです?今ビルドパスにも飛ぼうとしててhttps://t.co/QBgBg7dT のようにできたらと思っています。
— Yuhei Kagaya (@yuhei_kagaya) 2012, 11月 10
2014年
@yuhei_kagaya そろそろCakePHP3が出そうな今日この頃、如何お過ごしでしょうか?1年以上前に話して、既にcake.vimでは対応済みの .cake、やっとcake2.elでも対応しました。。。。
— k1LoW (@k1LoW) 2014, 4月 16
本当に遅くなりました。。。
.cakeって何?
こんなのです。
この.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って何?
@yuhei_kagaya .cakeですが、「CakePHP1, 2, 3である程度利用できるよう標準化してみる」ってアイデアがあるんですけど、どう思います?
— k1LoW (@k1LoW) 2014, 4月 21
エディタ用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を作っただけで八割方満足しました。
というわけで
「はじめました」報告でした。