NetBeans Yii Plugin Requirements

Hello, as you might already know the council members voted for creating an Yii framework plugin. But we don't have any experts on the framework, this is one of the reasons why we created this Frameworks Board group.
In this particular post I invite Yii experts to gather together and discuss the needed features for the plugin. These discussions than will be gathered and analyzed into a single specifications document. Following this document we'll try to make as much as we can to make a Yii developer happy.
Before I end I'd like you to keep in mind several questions and think about those :
- Name 3 most needed things by a developer in your framework ?
- Please enumerate some of the things that are not automated but should be ?
- Let's discuss some basic development workflow, what are the most often executed actions ?
Thank you, I wait for your opinions.
#1
#2
Existing IDEs with Yii support:
http://www.codelobster.com/yii.html (haven't reviewed it). http://yiiclipse.maziarz.org/ (navigation and completion are good).
A guide to setting up NetBeans for Yii (maybe some things could be automated):
http://www.yiiframework.com/wiki/83/netbeans-ide-and-yii-projects/
Discussion in PhpStorm tracker (they've started MVC thing already):
http://youtrack.jetbrains.com/issue/WI-322
#3
Very good Alexander, we'll analyze the links you sent us.
#4
Most needed things by a developer in Yii framework
Autocompletion: Yii is very modular, that's why sometimes the IDE can't find the class returned by some method calls (or its magic counterparts). This happens, for example, in calls to CModule::getModule, usually done via
Yii::app()->getModule('moduleName');.Things that are not automated but should be
rendermethod call).The most often executed actions
I believe that, after the use of autocompletion, navigation between files is the most often executed task. The control-click feature is very useful, but views are referenced inside of strings and it doesn't wotk there currently. This can be the first step in improving the navigation.
Opening files is another frequent operation. The "Go to File" dialog is very useful, but it gets polluted with the framework files (usually not what the user is looking for) and is difficult to distinguish files with the same name (very common for views, less common for controllers like the DefaultController). Some type of context could be added to this dialog: where is the file from (app, framework, vendor/lib), and an intra-app context could be applied, too (show the module/component/extension names). The files could be segregated in tabs for the app files, the framework files and custom directories for vendor/lib etc.
All good points from Alexander, especially the abiltiy to navigate to the view.
Congratulations and thanks for your initiative, guys!
#5
Thank you Rodrigo for your valuable comments
#6
Petra Novandi Barus from FB Yii group says:
I just want to add example for the autocompletion especially about CWebApplication component injection. Although I'm still not sure enough if this is important enough to be in the new Yii NB Plugin.
The nice thing I like about Yii is that I can easily add component in the CWebApplication from the config (/protected/config/main.php. this is the default config file for production)
e.g.
the current Netbeans can detect the App singleton in Yii class, although it only detects the singleton as CApplication instead of CWebApplication (if I code it for the web endpoint not console).
It will be nice if the NB can do autocomplete for the 'component' config.
Let's say if I had the config #1 above, and I type
Yii::app()->usit can complete toYii::app()->userand knows thatYii::app()->useris the default CWebUser (see [1] and [2])And what's really nice about the
componentpart in the config, I can change the class forusercomponent.So, if I type
Yii::app()->user, it would be nice if NetBeans could know if theuserfield is an instance ofMyWebUser.Another thing is, as I mentioned above, that I can add custom component to
Yii::app()singleton.This is not the default
CWebApplicationcomponents as stated in [1], but this is what I really like from Yii. I can just call my component byYii::app()->myComponent. And it would be nice if NetBeans could know if themyComponentis an instance ofMyComponentClass.Again, I'm not sure if it's important enough for everyone else and I'm already getting used to it. But I'm just suggesting. :)
[1] http://www.yiiframework.com/doc/api/1.1/CWebApplication [2] https://github.com/yiisoft/yii/blob/1.1.12/framework/web/CWebApplication...
#7
I think the most important things were mentioned, but to reiterate, what I'd most like to see: 1. Autocomplete for $this-> and modules 2. New App generation 3. File Navigation - as roderigo suggests 4. Easy access and editing of Views - autocompletion for view varialbes, navigate to relevant view based on render() or path